您的位置:首頁技術文章
文章詳情頁

Hibernate 修改數據的實例詳解

瀏覽:91日期:2022-06-07 10:44:31

Hibernate 修改數據

1.用 HQL方式來更新

在 這里修改 Person 的name 和age 通過 id 標識

Session currentSession = H3Utils.getCurrentSession();
  currentSession.beginTransaction();
  //創建 HQL 
  String hqlString = "update Person p set p.name=? , p.age=? where p.id=?";
  //構建 Query 
  Query query = currentSession.createQuery(hqlString);
  //設置參數 
  query.setParameter(0, "小明");
  query.setParameter(1, 18);
  query.setParameter(2, 1);
  //更新
  query.executeUpdate();
  currentSession.getTransaction().commit();

2 使用 HQL方式來更新

public void updateFunction2() {
  Session currentSession = H3Utils.getCurrentSession();
  currentSession.beginTransaction();
  //創建SQL 
  String sql = "UPDATE t_person_list SET name="cv",age=2 WHERE id=4" ;
  //執行
  currentSession.createSQLQuery(sql).executeUpdate();
  //提交
  currentSession.getTransaction().commit();
  }

3 使用 OID方式來更新

 Session currentSession = H3Utils.getCurrentSession();
  currentSession.beginTransaction();

  Person person = new Person();
  person.setId(44);
  person.setName("ccb");
  person.setAge(90);

  currentSession.update(person);

  currentSession.getTransaction().commit();

  • 使用 session.update()方法,根據主鍵去更新數據,如果數據存在,那么就可以更新,如果不存在,拋異常報錯
  • 可以使用 session.saveOrUpdate(person);方法,根據主鍵去更新數據,如果數據存在,那么就可以更新,如果不存在,就執行 insert

如有疑問請留言或者到本站社區交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

標簽: JSP
相關文章:
国产综合久久一区二区三区