既然是 ssh 那你还用原生的sql干嘛,怎么不用Hql. public boolean up(int id,New a){ try{ New n =findById(id); findyById是hibernate自动映射生成的,先找到这个对象,然后再更新它的值 n.setA(a.getA()); n.setB(a.getB()); getHibernateTempalte().update(n); return true; }catch(Exceptin e){ e.printStackTrace(); } return false; }
你先通过主键ID定位到POJO类 然后再更新POJO类
仔细看看你的这句是怎么回事 String hql = "updata New set " + "newCaption='"+n.getNewCaption()+"'" + ",newContent='"+n.getNewContent()+"'" + ",newDate='"+n.getNewDate()+"'" + ",newClassId='"+n.getNewClassId()+"' " + "where newId='"+n.getNewId()+"'"; boolean flag = true; s = this.getSession(); t = s.beginTransaction(); int i = s.createQuery(hql).executeUpdate();
public boolean up(int id,New a){
try{
New n =findById(id); findyById是hibernate自动映射生成的,先找到这个对象,然后再更新它的值
n.setA(a.getA());
n.setB(a.getB());
getHibernateTempalte().update(n);
return true;
}catch(Exceptin e){
e.printStackTrace();
}
return false;
}
String hql = "updata New set " +
"newCaption='"+n.getNewCaption()+"'" +
",newContent='"+n.getNewContent()+"'" +
",newDate='"+n.getNewDate()+"'" +
",newClassId='"+n.getNewClassId()+"' " +
"where newId='"+n.getNewId()+"'";
boolean flag = true;
s = this.getSession();
t = s.beginTransaction();
int i = s.createQuery(hql).executeUpdate();