发帖    主题    评论    推荐    标签    作者    订阅    查搜    注册   登陆   关注
 
面向对象 设计模式 领域驱动设计 企业架构 框架 开发教程 微服务 CQRS 扩展性 并发编程 事件溯源 分布式 SOA
1 2 下一页 Go 2

请问ejb+hibernate的事务控制

         
2004-05-11 08:56
赞助商链接

首先问问有没有这样一个架构:

struts + ejb + hibernate

如果有的话,那么事务控制是怎样的呢?

因为ejb由两种事务控制类型:Container和Bean

如果采取Bean,那么需要手动编写事务控制代码,这反而容易控制
就是在ejb中需要事务控制的方法中加入hibernate的事务控制语句就可以了。那么事务就会委托给hibernate所配置的事务管理jta或者简单的事务管理。


如果采取Container,那么ejb容器就会对ejb中的方法采取事务控制,而ejb又是调用hibernate,所以问题就是hibernate本身配置的事务还起作用吗?如果hibernate不进行事务控制,而是交给ejb容器来做的话,那在什么时候释放hibernate session?



2004-05-11 14:53

怎么没有人回答,我自己顶一下

2004-05-11 17:13

ejb + hibernate也是Hibernate推荐的架构之一啊。

建议采取Container,hibernate的事务当然起作用,如果你的系统对事务要求严格,建议使用CMP,当然牺牲了易开发性。

2004-05-12 11:29

如果选择Container,那么事务控制就是由容器来实现的。

那么在hibernate中不需要些事务控制代码。

问题:我们在什么时候释放hibernate session?

如果在hibernate层中释放session,那么容器的事务控制就不对。

还是我的看法不对?

再请banq解惑?

2004-05-12 11:35

可以配置hibernate的事务控制是委托给应用服务器的jta来实现,但是在编写事务控制代码时,必须显示的调用hibernate的beginTransaction()和commit()等等代码,还是不需要调用这些事务控制代码呢?

我不清楚。

2Go 1 2 下一页

赞助商链接

赞助商链接

返回顶部

移动版 关于本站 使用帮助 联系管理员 最佳分辨率1366x768
OpenSource JIVEJDON Powered by JdonFramework Code © 2002-20 jdon.com