郁闷的异常问题,使用hibernate3在测试添加编辑方法时
public void save(T t) {
Session session = getSession();
Transaction tx = beginTransaction(session);
try{
session.update(t);
tx.commit();
}catch(Exception e){
tx.rollback();
log.error("保存对象失败");
}
}
竟然保存不了对象没办法更新操作,也不知道是怎么回事,直到改成如下:
public void save(T t) {
Session session = getSession();
Transaction tx = beginTransaction(session);
try{
session.merge(t);
tx.commit();
}catch(Exception e){
tx.rollback();
log.error("保存对象失败");
}
}
才测试通过。添加编辑都用这个方法可以测试通过。可是不太清楚具体怎么回事?查资料网上说:
Hibernate save 在 session 中已存在相同 groupId(主键) 的对象,会出现异常