[Seasar]Bindingアノテーション
以下のDBFluteを使った検索のサンプルコードを読んで見習うべきだなぁと思ったこと。
https://www.seasar.org/svn/sandbox/dbflute/trunk/dbflute-example/src/main/java/org/seasar/dbflute/example/approot/web/mainte/book/SearchAction.java
Bindingアノテーションには、次のように「bindingType = BindingType.MUST」のパラメータを指定した方が賢明!なぜなら、バインディングできない場合は IllegalAutoBindingPropertyRuntimeException がスローされるから。
@Binding(bindingType = BindingType.MUST) private GenreBhv genreBhv;
「BindingType.MUSTを指定しないBindingアノテーション」や「Setterインジェクション」と比べて、規約ミスによりDIされない間違いを早期に発見できるのが嬉しい。正常系が通らないと、Exceptionがスローされる仕組みっていいですねぇ。