Hibernate 修改数据

Hibernate 修改数据

2 使用 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
早起的年轻人 CSDN认证博客专家 移动开发 项目管理 Java
只要用心去做,每一件事情还是有可能成功的,当然成功是没有界限的,只不过是达到自己心里的那个目标,公众号:我的大前端生涯,一个爱喝茶的程序员,通常会搞搞SpringBoot 、Herbinate、Mybatiys、Android、iOS、Flutter、Vue、小程序等.
©️2020 CSDN 皮肤主题: 代码科技 设计师:Amelia_0503 返回首页