Как определить единицу сохранения, чтобы не сканировать конкретный пакет? - PullRequest
0 голосов
/ 17 марта 2020

У меня есть приложение, в котором я определил 2 единицы постоянства. В моем приложении уже был один постоянный модуль, и он использовался в ссылочных банках. Когда я добавил второй, я могу использовать желаемую единицу персистентности в моих видимых классах, как это.

@PersistenceContext(unitName = "PU1")

Но во время работы сервера менеджер сущностей в банке не может определить, какие единица постоянства, чтобы выбрать. Я использовал primary = "true" при определении бина entityManager1. Не работает.

<bean id="emf" class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean" primary = "true">
        <property name="persistenceUnitManager" ref="pum" />
        <property name="persistenceUnitName" value="PU1" />
    </bean>

Для моего второго постоянного модуля я определил свойство класса, которое будет доступно только для определенной сущности.

Я также использовал свойство packagesToScan при определении второй сущности Диспетчер bean для сканирования только в том месте, где находится мой репозиторий.

Не работает. Это все еще отображается как конфликт в банке.

Есть ли способ, которым я могу ограничить класс или пакет, где постоянный модуль виден?

Я использую Spring 3.1.0

...