Spring bean, где класс фильтруется ... или как выбрать между двумя bean? - PullRequest
2 голосов
/ 18 октября 2011

У меня есть несколько источников данных XA, которые мне нужно настроить в контексте приложения Spring, которое я использую для интеграционного тестирования внутри Maven. Они выглядят так:

<bean id="sbeH2XADataSource" class="org.h2.jdbcx.JdbcDataSource">
    <property name="URL" value="$DS{hibernate.connection.url}" />
    <property name="user" value="$DS{hibernate.connection.username}" />
    <property name="password" value="$DS{hibernate.connection.password}" />
</bean>

<bean id="sbeMySQLXADataSource" class="com.mysql.jdbc.jdbc2.optional.MysqlXADataSource">
    <property name="URL" value="$DS{hibernate.connection.url}" />
    <property name="user" value="$DS{hibernate.connection.username}" />
    <property name="password" value="$DS{hibernate.connection.password}" />
</bean>

В идеале я бы использовал фильтрацию Maven для установки класса bean-компонента, но Spring это не нравится (по крайней мере, не инструменты Spring в Eclipse). Я действительно хотел бы избежать изготовления обоих бобов и просто сделать один. Если мне нужно сделать оба и использовать только один, как создать динамический bean-компонент «ref»?

Ответы [ 2 ]

1 голос
/ 18 октября 2011

Вы также можете использовать заполнитель свойства для значения ref и указать, какой компонент использовать в файле свойств.

1 голос
/ 18 октября 2011

Проверка пружины профили определения боба .Они позволяют регистрировать бобы в зависимости от среды.

...