8.SpringMVC_如何确定目标方法POJO类型参数/视图解析流程分析/

来源:互联网 发布:个人淘宝贷款怎么申请 编辑:程序博客网 时间:2024/06/08 19:55

一。

SpringMVC 确定目标方法POJO类型入参的过程:

1.确定一个key:若目标方法的POJO类型参数没有使用@ModelAttribute修饰,则key为POJO类名第一个字母小写

  若使用了该标签,则key为 @ModelAttribute 注解的value属性值。

2.若implicitModel中查找key对应对象,若存在,则作为入参传入

3.若implicitModel中不存在key对应对象,则检查当前Handler是否用了@SessionAttribute注解,

若使用了,且在注解的value属性值中包含key,则会从Httpsession中获取key对应的value值,若存在直接放入参数,不存在抛异常

4.如果Handler没有标识@SessionAttribute注解或者value中不存在对应key,则会通过反射创建POJO类型参数,传入目标方法参数

5.SpringMVC会把key和value保存到implicitModel中,进而会保存到request中。


二。

直接在连接中相应某页面,不想经过handler的时候,在springmvc.xml中使用 mvc:view-controller 标签,如下

<!-- 配置直接转发的页面 :不经过任何handler,直接到某页面--><mvc:view-controller path="/success" view-name="success"/>

这样直接在页面输入 http://localhost:8080/springmvc-1/success 即可进入,配置在视图解析器下的/WEB-INF/views/success.jsp。

注意:如此书写后,经过handler后的请求无法再解析到success页面。

解决方法:配置 mvc:annotation-driven标签,

<mvc:view-controller path="/success" view-name="success"/><mvc:annotation-driven></mvc:annotation-driven>

原创粉丝点击