将HibernateCursorItemReader与Entitymanagerfactory

时间:2017-05-06 22:35:15

标签: java spring spring-batch sessionfactory

我正在尝试在我的Spring批处理中使用 HibernateCursorItemReader (出于架构原因,我不能使用JpaPagingItemReader,因为我不需要分页)。但是,问题是我必须设置会话工厂,在我的情况下我只有entityManagerFactory。不幸的是,我必须仅为此目的使用XML配置。我知道在Java代码中我们可以像这样进行转换:

Session session = manager.unwrap(Session.class);
sessionFactory = session.getSessionFactory();

如何在sessionFactory中设置HibernateCursorItemReader属性?如果我必须从entityManagerFactory转换为SessionFactory?如何直接在XML配置中创建它?

1 个答案:

答案 0 :(得分:1)

解决方案是使用方法:entityManagerFactory的getSessionFactory

    <bean id="hibernateSessionFactory" factory-bean="entityManagerFactory"
    factory-method="getSessionFactory" />