先把对象load出来,然后把对象的属性重新设置,然后保存
解决方案 »
- 奇怪的问题
- 反复开关数据库 导致connection为空 怎么解决这个问题啊
- Struts2的国际化
- java新特性
- springSide 使用javaMailSender发送MimeMessage出错的问题
- EJB3笔记1-EJB3大变脸,实体Bean概念完全颠覆,EJB还有意义吗?
- 再问简单问题!JSP方面的。
- 关于向手机传输图片的格式问题
- 关于容器管理的entity bean如何处理自动增长id?
- 我是初学者,在开发ejb中,请问update、add和delete 的操作 ,在session bean中直接写sql来updat、add、delete语句对库操作,还是在entiy
- Java客户端调用C++的WebService出现错误,请帮忙看看,急啊!
- 各位老虾请进!小弟处于转型期,web service前途到底怎么样啊?送50分。。。。大家顶啊
Session session = sessionFactory.openSession();
Transaction tx = session.beginTransaction(); String hqlUpdate = "update User user Set user.name = :newName";
int deletedEntities = s.createQuery( hqlUpdate )
.setString( "newName", "Mike" )
.executeUpdate();
tx.commit();
session.close();
此方法同样适用于检索和更新数据。此外,在进行会返回很多行数据的查询时, 你需要使用 scroll() 方法以便充分利用服务器端游标所带来的好处。 Session session = sessionFactory.openSession();
Transaction tx = session.beginTransaction();
ScrollableResults customers = session.getNamedQuery("GetCustomers")
.setCacheMode(CacheMode.IGNORE)
.scroll(ScrollMode.FORWARD_ONLY);
int count=0;
while ( customers.next() ) {
Customer customer = (Customer) customers.get(0);
customer.updateStuff(...);
if ( ++count % 20 == 0 ) {
//flush a batch of updates and release memory:
session.flush();
session.clear();
}
}
tx.commit();
session.close();