1

サンプルフォーム:

<form:form commandName="loginDTO" action="/login">
<form:input path="username"/>
<form:input path="password"/>
</form:form>

サンプルコントローラー

@RequestMapping(value = "/login")
public String loginUser(LoginDTO loginDTO, BindingResult bindingResult, Model uiModel){
    //some code
}

Spring が指定された LoginDTO に自動注入を行う方法を知りたいです。Spring は setter メソッドにアクセスしますか?

4

1 に答える 1

2

デフォルトでは、Spring はデータ バインディングにセッター メソッドを使用しますが、代わりに直接フィールド アクセスを使用するようDataBinder.initDirectFieldAccess()に構成できますDataBinder

@InitBinder
public void configureBinder(WebDataBinder binder) {
    binder.initDirectFieldAccess();
}
于 2012-09-20T18:27:45.023 に答える