Archive for April 18th, 2005
hibernate
Posted on April 18, 2005 - Filed Under Uncategorized
session以request为边界,用spring opensessioninview filter+HibernateTemplate实现(其实就是ThreadLocal+ServletFilter)
transaction以service(不是DAO)为边界(如果一个service method里面需要有两段事务的话,就分成两个service method),用spring aop声明事务实现
另DAO可看实际情况考虑省去,代码迁移到service
你们肯定很少翻hibernate.org
http://www.hibernate.org/168.html
这里提到session和transaction的若干处理方法,介绍他们的优缺点,哪些不能用等等
我个人比较喜欢session-per-request-with-multiple-transactions
就是我上面所说的
另外还有两个application transaction做long Session的,大致就是之前断断续续讨论的detached objects、saveOrUpdate、hibernate version、httpsession保存po等等等等,用spring mvc可以实现,不过似乎这种做法目前接受度不高
http://up-u.com/?p=26
http://forum.javaeye.com/viewtopic.php?p=71858#71858