本文主要是介绍springmvc的ServletModelAttributeMethodProcessor解析_晏无心_新浪博客,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
当handler的参数类型为自定义的实体类类型或者添加了@ModelAttribute注解,ServletModelAttributeMethodProcessor会对参数进行解析绑定。
判断有没有@ModelAttribute注解,或者不是Java基本数据类型(Date、Number、Enum等)。
需要写一个方法,添加@ModelAttribute注解,请求会先进入这个方法,然后在进入对应的handler,这个时候添加@ModelAttribute的参数就可以获取到preTest12()方法里设置的值。
通过构造方法反射得到参数的实例。
最终通过spring bean的注入将http请求参数值注入到handler的实体类中。
判断有没有@ModelAttribute注解,或者不是Java基本数据类型(Date、Number、Enum等)。
看具体的handler:
另外一种用法是添加@ModelAttribute注解,对于这个的用法目前还不是太清晰:
需要写一个方法,添加@ModelAttribute注解,请求会先进入这个方法,然后在进入对应的handler,这个时候添加@ModelAttribute的参数就可以获取到preTest12()方法里设置的值。
再来看resolveArgument()方法:
通过构造方法反射得到参数的实例。
再回到resolveArgument()方法:
最终通过spring bean的注入将http请求参数值注入到handler的实体类中。
ServletModelAttributeMethodProcessor主要解析handler的实体类参数,将http请求参数映射绑定到实体类对应的属性里。
这篇关于springmvc的ServletModelAttributeMethodProcessor解析_晏无心_新浪博客的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!