当前页面: 开发资料首页 → J2EE 专题 → Hibernate 关于表更新 请教大家了!!!
Hibernate 关于表更新 请教大家了!!!
摘要: Hibernate 关于表更新 请教大家了!!!
public void update()
{
Session session= null;
Transaction tx=null;
try
{
session = HibernateSessionFactory.getSession();
tx=session.beginTransaction();
session.update("com.mytable.Users as u set u.username='panyong520' where u.id=1");//注意这里,我想让指定的ID 得到更新,该怎么?
tx.commit();
}
catch(Exception ex)
{
try
{
tx.rollback();
}
catch(Exception ex1)
{
ex1.printStackTrace();
}
ex.printStackTrace();
}
finally
{
try
{
session.close();
}
catch(Exception ex2)
{
ex2.printStackTrace();
}
}
}
你指的特定是想给他赋值吗?
可以用PreparedStatement这个方法。
?来代替1
Users user = session.load("Users",new Long(1));
user.setUserName("a new name");
ts.commit();
就这样了, 先在SESSION缓存里创建一个ID为 1的 USERS类型对象,
然后设置对象的NAME属性为“ a new name”, 然后提交。
这三步做完 HIBERNATE就会自动更新数据库里ID为1的那条记录的NAME属性为“a new name”
如果用session的load方法,可以用load(Object)这个重载。
可以类似的写成这样:
session.load(new Users(id, userName));
ts.commit();
谢谢大家了!!!我明白了