Spring MVC(十三)--保存并获取属性参数
2021-05-17 09:29
标签:forward 控制器 required use strong 部分 信息 请求头 http请求 这里的属性参数主要是指通过request、session、cookie等设置的属性,有时候我们需要将一些请求的参数保存到HTTP的request或者session对象中去,在控制器中也会进行设置和获取操作,spring mvc使用注解的方式支持这些场景,主要的注解有以下几个: 下面一一介绍各注解的用法: 一、注解@RequestAttribute 因为是获取方法,所以先要通过页面设置一些属性。 1??jsp中设置请求属性 2??在映射路径所在的控制器中获取 上面红色加粗部分的代码就是获取通过request对象设置的属性值; 二、注解@SessionAttribte 1??jsp中设置session属性 2??在控制器中获取属性 红色加粗部分就是获取session属性的方法; 三、注解@SessionAttributes 这个注解只能作用在类上面,不能对方法和参数进行注解。 当在类上设置上述注解后,Spring MVC在执行完控制器逻辑后,就会将数据模型中对应的属性名称或属性类型保存到HTTP的session中,比如执行下面这个方法后: 上述方法中获取到了一个Param对象,当执行完这个方法之后,param对象就会被保存到session中,通过名称params就能获取到属性值; 四、注解@CookieValue 上面红色加粗部分就是获取cookie值的方式; 五、注解@RequestHeader 上面红色加粗部分就是获取HTTP请求头的方式; Spring MVC(十三)--保存并获取属性参数 标签:forward 控制器 required use strong 部分 信息 请求头 http请求 原文地址:https://www.cnblogs.com/hellowhy/p/9746745.html
request.setAttribute("username", "hello");
request.setAttribute("msg", "World");
request.getRequestDispatcher("./reqAttr").forward(request, response);
%>
@RequestMapping("reqAttr")
public ModelAndView getRequeParam(@RequestAttribute("username") String uname, @RequestAttribute("msg") String msg) {
ModelAndView mv = new ModelAndView();
System.out.println(uname + "----" + msg);
mv.addObject("uname", uname);
mv.addObject("msg", msg);
mv.setViewName("jump/requestAttribute");
return mv;
}
body>
session.setAttribute("session1", "sessionsddffdfd");
response.sendRedirect("./getSession");
%>
body>
@RequestMapping("getSession")
public ModelAndView setSession(@SessionAttribute("testSession") String msg) {
ModelAndView mv = new ModelAndView();
mv.addObject("msg", msg);
mv.setViewName("jump/testSession");
return mv;
}
@SessionAttributes(names = { "params" }, types = { Param.class }) // 将param对象保存到session中
@RequestMapping("nextPage1")
public ModelAndView nextPage(Param param) {
ModelAndView mv = new ModelAndView();
System.out.println("header-userAgent:" + userAgent + ";cookie-jessionId:" + jessonId);
mv.addObject("params", param);
mv.setViewName("jump/jump");
return mv;
}
@RequestMapping("nextPage1")
public ModelAndView nextPage(@CookieValue(value = "JESSIONID", required = true, defaultValue = "MyJessionId") String jessonId,
Param param) {
ModelAndView mv = new ModelAndView();
System.out.println("header-userAgent:" + userAgent + ";cookie-jessionId:" + jessonId);
mv.addObject("params", param);
mv.setViewName("jump/jump");
return mv;
}
@RequestMapping("nextPage1")
public ModelAndView nextPage(@RequestHeader(value = "User-Agent", required = false, defaultValue = "attribute") String userAgent,
Param param) {
ModelAndView mv = new ModelAndView();
System.out.println("header-userAgent:" + userAgent + ";cookie-jessionId:" + jessonId);
mv.addObject("params", param);
mv.setViewName("jump/jump");
return mv;
}
上一篇:Python基础知识
下一篇:归并排序
文章标题:Spring MVC(十三)--保存并获取属性参数
文章链接:http://soscw.com/index.php/essay/86658.html