- 讲师:刘萍萍 / 谢楠
- 课时:160h
- 价格 4580 元
特色双名师解密新课程高频考点,送国家电网教材讲义,助力一次通关
配套通关班送国网在线题库一套
百度广告
public class HibernateTestBean implements SessionBean ...{
SessionFactory sf;
this.sessionContext = sessionContext;
InitialContext ctx = new InitialContext();
} catch (NamingException ex) ...{
}
public void tran()...{
tran2();
}
Session session=sf.getCurrentSession();
msg.setCreateTime(new Date());
session.save(msg);
session.flush();
}
Session session=sf.getCurrentSession();
msg.setCreateTime(new Date());
session.save(msg);
// throw new RuntimeException("wrong");
……
客户端调用tran以上代码可以正确运行吗?
辨析:
其实这是应为getCurrentSession()会使用环境已有的Session,同时注意getCurrentSession()要在事务的环境中使用。
2 如果上述代码tran1中的sf.getCurrentSession();改为sf.openSession()代码将可以正确运行。这是因为openSession()每次都会返回一个新的Session。而在tran2种的sf.getCurrentSession()并不会使用tran1中的session,而是会使用当前事务环境中的默认的session.
答案是仍然可以回滚的.
责编:罗莉
课程专业名称 |
讲师 |
课时 |
查看课程 |
---|
课程专业名称 |
讲师 |
课时 |
查看课程 |
---|
点击加载更多评论>>