Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/google-chrome/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如果一个类被标记为@Transactional,是否可以省略通常的事务管理样板代码?_Java_Hibernate_Spring - Fatal编程技术网

Java 如果一个类被标记为@Transactional,是否可以省略通常的事务管理样板代码?

Java 如果一个类被标记为@Transactional,是否可以省略通常的事务管理样板代码?,java,hibernate,spring,Java,Hibernate,Spring,如果一个类被标记为@Transactional,这是否意味着样板文件: Transaction tx = session.getTransaction(); try { ... ... ... tx.commit(); } catch (Exception e) { tx.rollBack(); } 可以省略吗?我的基于Hibernate的代码当然可以在没有它的情况下工作 编辑(后续):那么为什么人们总是在方法中编写样板文件,即使他们的类被

如果一个类被标记为@Transactional,这是否意味着样板文件:

Transaction tx = session.getTransaction();

  try {
   ...
   ...
   ...
   tx.commit();


  }

  catch (Exception e) {
   tx.rollBack();
  }
可以省略吗?我的基于Hibernate的代码当然可以在没有它的情况下工作


编辑(后续):那么为什么人们总是在方法中编写样板文件,即使他们的类被注释了

当然,这是声明性事务概念的主要目标。
此外,它更灵活,因此您可以使用不同的传播级别在事务中组合多种方法。

当然,这是声明性事务概念的主要目标。
此外,它更灵活,因此您可以使用不同的传播级别在事务中组合多种方法。

只要您还有
,是的--这就是注释的用途:)


详细说明。

只要您还有
,是的——这就是注释的目的:)

详细说明。

是的,只要

  • 事务管理已正确配置,请参阅

  • 对该方法的调用不会违反基于AOP的声明性事务管理的限制,请参阅(或者使用AspectJ集成等高级功能来克服这些限制)。
    也就是说,对该方法的所有调用都是在从Spring获得的对象上执行的,并且不会从同一类的其他方法执行任何调用

  • Session
    通过调用
    SessionFactory.getCurrentSession()
    在方法内部获得

  • 是的,只要

  • 事务管理已正确配置,请参阅

  • 对该方法的调用不会违反基于AOP的声明性事务管理的限制,请参阅(或者使用AspectJ集成等高级功能来克服这些限制)。
    也就是说,对该方法的所有调用都是在从Spring获得的对象上执行的,并且不会从同一类的其他方法执行任何调用

  • Session
    通过调用
    SessionFactory.getCurrentSession()
    在方法内部获得


  • 那么为什么人们总是在方法中编写样板文件,即使他们的类被注释了呢?一个过时的代码。或者只是他们不阅读文档,或者只是不理解,或者害怕使用它,或者。。。简言之,没有合理的理由。那么,为什么人们在方法中编写样板文件,即使他们的类被注释了?一个过时的代码。或者只是他们不阅读文档,或者只是不理解,或者害怕使用它,或者。。。简言之没有合理的理由。回答你的最后一个问题:出于同样的原因,SO上三分之一的问题可以通过阅读f***文档来回答:开发人员现在无法或太懒了,无法阅读文档。回答你的最后一个问题:出于同样的原因,SO上三分之一的问题可以由仅仅阅读f***文档:现在的开发人员无法或懒得阅读文档。