Spring Framework 2.5.3 がリリースされました。
http://www.springframework.org/node/622
すべての2.5.xユーザにアップグレードが推奨されています。
主な変更点はこんな感じです。
- @Autowiredアノテーション、@Requiredアノテーションの動作の変更。
- @Autowiredアノテーションが付けられたメソッドがサブクラスでオーバーライドされているとき、@Autowiredアノテーションの動作はオーバーライドされたメソッドには継承されないように変更になった。(2.5.2までは、@Autowiredアノテーションがついたメソッドがサブクラスでオーバーライドされた場合は、サブクラスのオーバーライドされたメソッドにも暗黙的に@Autowiredアノテーションがついていることになっていた)
- @Requiredアノテーションは、XMLでのBean定義をしなくても@Autowiredアノテーションと組み合わせて利用できるようになった。
- @Controllerアノテーションが付いたBeanがデフォルトで検索されるようになった
- <jee:...要素を使ったjndiルックアップはresource-ref="true"がデフォルトになった
- JMSセッションとプロデューサプーリング用の新しいCachingConnectionFactoryクラス
- DB2/390とDB2/400のための新しいDB2MainframeSequenceMaxValueIncrementerクラス
- リファレンスドキュメントがJSF1.2、Struts2.0対応になった
- PropertyPlaceholderConfigurerで、${db.${environment}}のようにネストしたプレイスホルダーキーをサポート
- その他
詳細はChangelogを参照してください。
http://static.springframework.org/spring/docs/2.5.x/changelog.txt
すべての2.5.xユーザにアップグレードを推奨すると言ってますが・・・。メソッドがオーバーライドされたときの@Autowiredアノテーションの振る舞いの変更は、ソースコードの修正が発生しそうですね。setterをオーバーライドすることはあまり無さそうですが、コンストラクタインジェクションを使っている場合はオーバーライドしているケースが結構多いのではないでしょうか?
@Requiredアノテーションについては、2.5.2 までは@Requiredアノテーションを使う場合はXMLでのBean定義が必須でしたが、2.5.3 では@Autowiredアノテーションと組み合わせて利用できるようになったのが便利ですね。
・・・まぁ、@Autowired(required=true) とあまり変わりませんが・・・
0 コメント:
Post a Comment