[英]The Hibernate session (EntityManager) scope in Spring Batch?
由于我是Spring和Spring Batch的新手,所以我对使用Hibernate作为提供程序的Spring Batch和JPA有一个一般性的问题。
拜托,我想知道什么时候 刷新 Hibernate会话(由EntityManager包装)? 在读者,处理器和作家之间? 或每个提交间隔? 我们可以控制吗?
据我所知,何时提交Spring事务(在每个块之后)。
请,我想知道什么时候刷新Hibernate会话(由EntityManager包装)? 在读者,处理器和作家之间? 或每个提交间隔?
在每个提交间隔写入大量项目后,将刷新该会话。 有关更多详细信息,请查看:
HibernateItemWriter
: https : //github.com/spring-projects/spring-batch/blob/master/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/HibernateItemWriter.java#L95
JpaItemWriter
: https : //github.com/spring-projects/spring-batch/blob/master/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/JpaItemWriter.java#L84
我们可以控制吗?
如果使用HibernateItemWriter
,则可以设置clearSession
标志以清除每个块之后的会话。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.