9

我有多个数据源和多个 EntityManagerFactories 要在我的 spring 上下文中定义。

如果仅在 EntityManagerFactory 上存在,我们不需要提供 persistenceUnitName。但是要将 EntityManager 以更正 EntityManagerFactory 与 @PersistenceContext 我应该提供 unitName="somePU" 属性。

但是,如果我们为 persistenceUnitName 属性命名,那么 Spring 期望在 persistence.xml 文件中声明这些 persistenceUnitName。

有没有办法在没有 persistence.xml 的情况下为 Spring 的 LocalContainerEntityManagerFactoryBean 提供 persistenceUnitName?

当我将 persistence.xml 与 Spring 的 LocalContainerEntityManagerFactoryBean 一起使用时,我还发现了另一个问题。packagesToScan 属性不起作用。我需要列出persistence.xml 中的所有实体类。

知道为什么会这样吗?

-湿婆

4

2 回答 2

4

LocalContainerEntityManagerFactoryBean为我指定作品中的财产

    <property name="persistenceUnitName" value="MyPersistenceUnit"/>
于 2013-02-21T17:33:10.840 回答
3

创建 LocalEntityManagerFactoryBean 后,设置持久化单元名称:

    LocalContainerEntityManagerFactoryBean factory = new LocalContainerEntityManagerFactoryBean();

    factory.setPersistenceUnitName("NAME_OF_PERSISTENCE_UNIT");
于 2015-05-21T11:50:57.723 回答