你应该把它@Transactional放在DAO类和/或它们的方法中,还是更好地注释使用DAO对象调用的Service类?或者注释两个"层"是否有意义?
如果我在Spring bean中的私有方法上有@Transactional -annotation,那么注释是否有效?
如果@Transactional注释是在公共方法上,则它可以工作并打开事务.
public class Bean {
public void doStuff() {
doPrivateStuff();
}
@Transactional
private void doPrivateStuff() {
}
}
...
Bean bean = (Bean)appContext.getBean("bean");
bean.doStuff();
Run Code Online (Sandbox Code Playgroud) 代码中标题的问题:
@Transactional (readonly = true)
public interface FooService {
void doSmth ();
}
public class FooServiceImpl implements FooService {
...
}
Run Code Online (Sandbox Code Playgroud)
VS
public interface FooService {
void doSmth ();
}
@Transactional (readonly = true)
public class FooServiceImpl implements FooService {
...
}
Run Code Online (Sandbox Code Playgroud) 我有一个带@Transactional注释的类(而不是为它的所有方法标记它).
虽然我在该类中有一个不应该注释为的方法@Transactional.
我的问题是,我可以在此方法中添加注释以将其标记为"非事务性"吗?或者我应该开始将此类中的每个单一方法标记为"事务性",不包括此方法(很多工作)
谢谢.
spring ×4
annotations ×3
java ×3
transactions ×3
coding-style ×1
dao ×1
hibernate ×1
jpa ×1
jta ×1