事务、拦截器

基于JDBC的事务管理

  • 通过SessionFactoy获得Session对象

    Session session = sessionFactory.openSession();
    
  • 通过Session对象开始一个事务

    Transaction t = session.beginTransaction();
    
  • 进行相关的数据操作

  • 事务提交

    t.commit();
    
  • 如果事务处理出现异常,则撤销事务(通常称为事务回滚)

    t.rollback();
    
  • 关闭Session,结束操作

    session.close();
    

基于JTA的事务管理

JTA ( Java Transaction API)是由Java EE Transaction Manager管理的事务,其最大的特点是调用UserTransaction接口的begin()、 commit()和rollback()方法来完成事务范围的界定、事务的提交和回滚。JTA 可以实现同- 事务对应不同的数据库。

拦截器的应用

可以通过session方式加载拦截器对象,也可以通过Configuration对象加载拦截器

  • session:只对当前的session进行拦截,又叫做局部拦截器

    sessionFactory.openSession(Interceptor interceptor)
    
  • Configuration:对所有的session都会被拦截,全局拦截器

    Configuration的setInterceptor(Interceptor interceptor)
    

猜你喜欢

转载自www.cnblogs.com/chaostudy/p/12917315.html