1

フレームワーク 2.5.6、セキュリティ 2.0.4、および Web サービス 1.5 を使用していた Spring MVC アプリをアップグレード中です。新しいバージョンを調査したところ、Spring 3.1.0 および 3.0.7 ではコントローラーの継承が廃止され、アノテーション駆動型の構成が優先されていることがわかりました。アノテーションがSpring構成の前進であることは理解していますが、私の状況では、依存性注入のデフォルト値を構成する人はsrcファイルを編集できません。

私の会社でのプロセスは次のようなものです。

  • 私は Java EE アプリの主な開発者です。
  • jsp、css、(一部の) javascript、xsl、XML Spring 構成、および Spring プロパティ ファイルをカスタマイズするデザイナーとスキルの低い開発者の別のチームがあります。
  • 100 を超えるアクティブなカスタム実装があり、それぞれ異なるデフォルト値を Bean に注入し、一部は i18n メッセージングを使用しています。
  • コア製品に何百もの異なるテーマを用意する代わりに、「カスタマイズ チーム」が独自のソース管理システム内でカスタム アプリケーションを維持できるようにする非常にスマートなビルド プロセスがあります。ビルド スクリプトは、コンパイルして Tomcat にデプロイする前に、カスタム アプリケーションのファイルをコア アプリケーションに上書きします。そのため、src ファイルには一切触れず、エンジニアリングと社内の美学を切り離しています。

(構成モジュールをアプリに組み込む機会があれば、それは既に行われているはずです。そのため、今のところ、XML 構成の管理にとどまっています。)

では、私の場合、注釈構成はどのように機能しますか? 私たちの製品のアーキテクチャを考えると、それは実行可能なソリューションではないように思えます。注釈駆動型構成の主な目標は、開発者が XML ファイルではなく src ファイル内で依存関係の挿入を管理できるようにすることではないでしょうか?

Spring 3 で XML 構成のみを使用する方法を知っている人はいますか?

編集:私はこれを見つけました: http ://static.springsource.org/spring/docs/3.0.x/spring-framework-reference/html/beans.html#beans-java-combiningなので、すべてのコントローラーを移行できると思いますアノテーションを使用するが、他の Bean はそのままにしておくことができます。これは、カスタマイズ チームがコントローラーの構成にあまり触れないためです。

4

1 に答える 1

2

私はこれに関する専門家ではありませんが、現在のプロジェクトでSpring 3.1を使用しており、まだ十分なxml構成があります。アプリケーション全体は、foo-servlet.xmlで定義された一連のBeanから組み立てられています(だから私はコントローラー Bean などにプラグインされる daos があります)。私のコントローラーには、受信 HTTP 要求に関連付けられたメソッドに関する注釈が確かにありますが、それらは URL パラメーターなど、コードに密接に結び付いた詳細のようなものです。テストでは注釈と型駆動型インジェクションを使用します。これは迅速かつ簡単だからです。

だから私はあなたの質問を読んで少し混乱しています。私が誤解している可能性があります。または私のケースが異なる可能性がありますが、注釈を使用する必要がある量を過大評価しているように少し聞こえます。理にかなっていると思われる場所ではそれらを使用しますが、それが最適と思われる場所ではxmlに固執します...

于 2012-03-05T23:51:48.010 に答える