EJB Transaction没有自动commit
使用EJB的时候遇到一个问题,因为系统比较老 用得的都是xml配置的
有两张表:A,B
是原本的想法是A中的a字段update后,B表中的b字段根据A中更新a字段的数据做update
但是执行此方法 2个update好像是同时发出,所以B中的字段没有upadte 只有A的会变化
代码大致如下:
public class Impl{
void update(xx){
DetailDao.updateA(xx);
DetailDao.updateB(xx);
}
}
public class DetailDao {
static void updateA(xx){
CommonDao.update(xx);
}
static void updateB(xx){
CommonDao.update(xx);
}
}
public class CommonDao{
//实际的sql
.....
}
ejb-jar.xml配置如下
<session>
<display-name>Impl</display-name>
<ejb-name>Impl</ejb-name>
<home>com.xx.ImplHome</home>
<remote>com.xx.ImplRemote</remote>
<ejb-class>com.xx.Impl</ejb-class>
<session-type>Stateless</session-type>
<transaction-type>Container</transaction-type>
</session>
请大家帮帮忙
谢谢~