样本表格:
<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方法?
答案 0 :(得分:2)
默认情况下,Spring使用setter方法进行数据绑定,但您可以将其配置为使用直接字段访问,方法是在配置DataBinder.initDirectFieldAccess()
时调用DataBinder
:
@InitBinder
public void configureBinder(WebDataBinder binder) {
binder.initDirectFieldAccess();
}