現在、私の春の構成はxmlファイルにあります(従来の方法)。
これについて私が気に入っていることの 1 つは、展開中に、実稼働設定を持つ別のバージョンを展開したり、テスト環境でそこにテスト設定を入れたりできることです。
クラスで構成するというアイデアは気に入っていますが、それは私の戦争にコンパイルされてしまい、柔軟性がなくなります。
これを回避する方法はありますか?
現在、私の春の構成はxmlファイルにあります(従来の方法)。
これについて私が気に入っていることの 1 つは、展開中に、実稼働設定を持つ別のバージョンを展開したり、テスト環境でそこにテスト設定を入れたりできることです。
クラスで構成するというアイデアは気に入っていますが、それは私の戦争にコンパイルされてしまい、柔軟性がなくなります。
これを回避する方法はありますか?
Java 構成は優れており、いくつかの利点があります。
リファクタリングしやすい
タイプセーフ
はるかに柔軟です (XML のセマンティクスと機能に縛られることなく、任意の Java コードを記述できます)。
本番環境の設定を含む別のバージョンをデプロイしたり、テスト環境でテスト環境を設定したりできます。
Spring @Profile
sを調べます。それらはあなたの質問に直交しています(XMLとの両方で機能します@Configuration
)が、あなたの状況に最適です。
これらは、利用可能な唯一の2つの方法です。構成をコードに焼き付けたくない場合は、xml を使用する必要があります。
Spring リファレンス マニュアルには、Java と XML 構成の両方を組み合わせるセクションが含まれています。http://static.springsource.org/spring/docs/3.1.x/spring-framework-reference/html/beans.html#beans-java-combiningを参照
XML 中心の傾向がある場合は、XML を使用してアプリをブートストラップし、必要に応じてアドホックな方法で Java 構成を導入できます。これは、それを緩和する良い方法かもしれません。ずっと Java 構成に行くことに決めたかもしれません。