天天看点

Hibernate中持久化上下文的flush操作之一ALWAYS

在Hibernate中,持久化上下文Session还支持ALWAYS的flush模式(JPA不支持)。

在这种flush模式下,执行native SQL查询也将触发Session执行flush操作,示例如下:

Person person = new Person("John Doe");
entityManager.persist(person);

//flush executed
Session session = entityManager.unwrap( Session.class);
session .createSQLQuery("select count(*) from Person")
        .setFlushMode( FlushMode.ALWAYS)
        .uniqueResult();
           

继续阅读