我想在没有 FlushMode.ALWAYS 的情况下运行一个单一的方法。
所以我需要 setFlushMode(FlushMode.COMMIT)
但我不知道该怎么做,我开始认为使用 spring 数据是不可能的。
我尝试 Autowiring SessionFactory 并执行此操作
sessionFactory.getCurrentSession().setFlushMode(FlushMode.COMMIT);
但是我得到了这个错误
No qualifying bean of type [org.hibernate.SessionFactory] found for dependency...
我的理解是我不能 Autowiring session 工厂,所以我不能使用那种设置刷新模式的方式。
那么我的问题是
有没有办法使用 spring 数据为单个方法设置刷新模式?怎么办?
最佳答案
我结束了在我的 JPARepository 接口(interface)中注释我的查找方法,如下所示:
@QueryHints(value = { @QueryHint(name = org.hibernate.annotations.QueryHints.FLUSH_MODE, value = "COMMIT") })
List<ConcatenaCep> findByCep(Integer cep);
关于java - 如何在 SPRING DATA 中为单个方法将 FlushMode 设置为 COMMIT,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44653930/