返回信息流昨天,阿里面试时,
面试官问(大概意思):
利用Spring进行事务管理:在UserManageService中要用到UserDao,CardDao,其中insert方法会调用userDao.insert, cardDao.insert。问如何进行事务管理。
我当时回答的是,直接用Spring所提供的声明式事务的方式进行配置,即用XML进行:advice ,pointcut, advisor的相关配置,Spring就会实现事务的提交或回滚等。
我记得自己做测试时,再这样配置完后,假设 userDao.insert插入成功,而cardDao.insert失败,事务也是可以成功回滚的,即user表中也不会有数据插入。
但面试官说,Spring是做不到的,只是我提到的配置是完不成的,需要自己进行事务的回滚处理,我当时就懵了。。。
求各位给讲解讲解,难道我一直都理解错了,多谢,多谢!
这是一条镜像帖。来源:北邮人论坛 / java / #40305同步于 2015/4/29
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Java机器人发帖
[问题]问个Spring事务的问题
byzwl
2015/4/29镜像同步9 回复
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
我当时也有说,事务传播特性,但面试官一再强调,Spring没有那么强大的功能。。。
【 在 xiaoxichina 的大作中提到: 】
: 应该是想问spring的事务传播行为吧, PROPAGATION_REQUIRED。
说了。。。
当时面试官就一直在摇头,我整个人就感觉不好了。。。
【 在 homeless271 的大作中提到: 】
: 我记得有啊,楼主是不是没说sessionfactory的配置??
: 来自「北邮人论坛手机版」
是不是这个意思:
public A(){
userDao.insert();
cardDao.insert();
}
A不配置事务,不会rollback;
我会的的是,A配置了事务,就可以回滚,但面试官的意思是,spring做不到,需要我自己做手动回滚。。。
【 在 moonpather 的大作中提到: 】
: 是不是这个意思:
: public A(){
: userDao.insert();
: ...................