码迷,mamicode.com
首页 > 其他好文 > 详细

JPA EntiityManager.refresh方法

时间:2020-07-29 21:46:10      阅读:60      评论:0      收藏:0      [点我收藏+]

标签:cto   hiberna   where   mit   sele   sel   find   manage   数据库   

refresh 方法

  • 刷新:将数据库中的数据刷新到Managed状态的实体中

refresh 方法测试

find 之后 setter 之后 refresh

@Test
public void test() {
    EntityManagerFactory factory = Persistence.createEntityManagerFactory("myJpa");
    EntityManager em = factory.createEntityManager();
    EntityTransaction tx = em.getTransaction();
    tx.begin();

    Student s = em.find(Student.class, 1L);
    /*

    Hibernate:
        select
            student0_.sid as sid1_0_0_,
            student0_.sage as sage2_0_0_,
            student0_.sname as sname3_0_0_
        from
            Student student0_
        where
            student0_.sid=?

     */
    System.out.println(s); // Student{sid=1, sname=‘刘备‘, sage=23}
    s.setSname("陈宫");
    System.out.println(s); // Student{sid=1, sname=‘陈宫‘, sage=23}
    em.refresh(s);
    /*

    Hibernate:
        select
            student0_.sid as sid1_0_0_,
            student0_.sage as sage2_0_0_,
            student0_.sname as sname3_0_0_
        from
            Student student0_
        where
            student0_.sid=?

     */
    System.out.println(s); // Student{sid=1, sname=‘刘备‘, sage=23}

    tx.commit();
    em.close();
    factory.close();
}

JPA EntiityManager.refresh方法

标签:cto   hiberna   where   mit   sele   sel   find   manage   数据库   

原文地址:https://www.cnblogs.com/wumingoo1/p/13399272.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!