1

ActiveMQConnectionFactoryは、サーバーアドレスを格納するためにbrokerURLプロパティを使用します。TibjmsConnectionFactoryは、サーバーアドレスを格納するためにserverUrlプロパティを使用します。

プロパティファイルから切り替えることができるように、Spring構成でBeanを定義することは可能ですか?例えば:

<bean id="connectionFactory" class="${listener.connection.factory}">
    <property name="XXX" value="${in.serverUrl}" />
</bean>

XXXがbrokerURLまたはserverUrlとして機能する場合-接続ファクトリに応じて。

プロファイルを使用してこれを実現できることは知っていますが、非常に単純な問題のように見え、簡単に解決できます。

4

1 に答える 1

0

残念ながら、プロパティ名は PropertyPlaceHolderConfigurer に基づくことができないため、プロパティ値に基づくことはできません。これらは私が考えることができるいくつかの方法です:

  1. @Configuration可能であればJava を使用します (Spring 3.2+)。その後、カスタム プロパティ値に基づいていずれかの接続ファクトリを作成できます。
  2. あなたが指摘したように、割引されていますが、プロファイルはこの種のシナリオに非常に適しています.
  3. 少し過剰なアプローチであるFactoryBeanを作成します。これは、カスタム ファクトリ Bean に渡すフラグに基づいて、いずれかの接続ファクトリを作成します。
于 2013-02-12T01:30:53.617 に答える