springMvc处理请求参数;处理模型数据

本文介绍SpringMVC框架中处理HTTP请求参数的方法,包括@RequestParam、@RequestHeader和@CookieValue等注解的使用技巧,并阐述如何通过ModelAndView、Map/Model及@SessionAttributes等方式传递模型数据。

一、处理请求参数

   1.@RequestParam ***

    1).使用@RequestParam将请求中的请求参数映射到方法的入参上.

 2).使用@RequestParam需要注意的问题:

     a.如果请求参数名与目标方法的入参名一致,则可以不通过RequestParam指定.但是建议不省略.

     b.使用RequestParam标注的入参要求必须要能从请求参数中获取到对应的请求参数.

     c.可以使用required=true/false来指定是否必须要从请求参数中获取对应的请求参数.

     d.默认情况下,如果从请求参数中获取不到对应的参数,SpringMVC会给入参赋null值.

       如果入参定义的是基本类型的,则接收不了null值.

       >. 使用包装类型来定义入参

       >. 使用defaultValue来设置默认值.替换null值.

   2.@RequestHeader

     a.使用@RequestHeader将请求头信息映射到目标方法的入参中.


3.@CookieValue

     a.使用@CookieValue将请求信息中的Cookie信息映射到目标方法的入参中.


 4.POJO ***

a.将请求参数映射到POJO的属性上.

       >.请求参数名与属性名一致。

       >.在java类中提供set方法。

       >.支持级联属性.


5.原生的ServletAPI

     a.SpringMVC支持在目标方法的入参中定义原生的Servlet相关的对象,常用的request  response session等.


二、处理模型数据

   1.ModelAndView

     a.将目标方法的返回值声明为ModelAndView类型的.

     b.在目标方法中直接通过new操作创建ModelAndView对象

     c.使用setViewName()设置视图信息

     d.使用addObject(k,v)设置模型数据

     e.最终在目标方法中将ModelAndView对象返回,SpringMVC最终会把ModelAndview中的模型数据

       存放到request域对象,再通过转发的方式去往ModelAndView中设置的视图.


   2.Map/Model

     a.在目标方法的入参中定义Map或者是Model类型的参数.

     b.SpringMVC会在调用目标方法的时候传入BindingAwareModelMap对象.

     c.不管目标方法的返回值是String还是ModelAndView,SpringMVC调用完目标方法之后,都会

       返回一个ModelAndView对象. 详见  DispatcherServlet的945行.

   3.@SessionAttributes

     a.该注解只能加到类上.

     b.该注解的两个属性:

     value: 通过指定模型数据key的方式来确定将那些模型数据存放到session中.

     types: 通过指定模型数据的类型的方式来确定将那些东西模型数据存放到session中.

   4.@ModelAttribute




评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Diligently_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值