thirdteendevil
2013-02-01 12:33hibernate 的transaction和 session问题
用的SSH框架,事务切到service层, 在service取出一个用户列表,在action中循环此列表修改每个用户的角色id属性为角色名称后 , 数据库就变了呀 !! 在网上搜索了好久 说session关闭的时候会吧持久对象更新到数据库中, 但是自己做了一个例子
Transaction tx = session.beginTransaction(); Query query = session.createQuery("from Test01"); query.setFirstResult(begin); query.setMaxResults(count); List<Test01> l = (List<Test01>)query.list(); for(Test01 u : l){ u.setPwd("1"); } tx.commit(); for(Test01 u : l){ System.out.println(u); u.setPwd("22222"); session.update(u); } session.flush(); session.close();
修改后数据库中 pwd却是"1" 不是"22222" 为什么?
- 点赞
- 回答
- 收藏
- 复制链接分享
7条回答
为你推荐
- org.hibernate.HibernateException: No Session found for current thread
- spring
- springmvc
- mysql
- hibernate
- 0个回答
- spring3与hibernate4整合session问题
- spring
- 0个回答
- hibernate 的transaction和 session问题
- hibernate
- 0个回答
- hibernate对象状态问题
- hibernate
- 0个回答
- Hibernate在中的 session 管理问题
- hibernate
- 0个回答
换一换