提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
目录
前言
在此分别简单的介绍Request、Session与Application的作用域。
一、Request
1.通过原生servlet进行数据转发
@RequestMapping(value = "/testServlet")
public String testServlet(HttpServletRequest request) {
request.setAttribute("message","通过原生servlet传送的数据");
return "ok";
}
2.实现Map接口
@RequestMapping(value = "/testMap")
public String testMap(Map<String, Object> map) {
map.put("message","通过Map接口传送的数据");
return "ok";
}
3.使用Model
@RequestMapping(value = "/testModel")
public String testModel(Model model) {
model.addAttribute("message","通过Model接口传送的数据");
return "ok";
}
4.使用ModelAndView
public ModelAndView testModelAndView() {
ModelAndView mav = new ModelAndView();
mav.addObject("message","这是关于ModelAndView的测试");
mav.setViewName("ok");
return mav;
}
二、Session
1.使用原生Servlet
@RequestMapping(value = "/testServletSession")
public String testServletSession(HttpServletRequest request, HttpServletResponse response, HttpSession session) {
session.setAttribute("message","这是原生Session的信息");
return "ok";
}
2.使用@SessionAttributes注解:
@SessionAttributes(value = {"testSessionAttributes"})
.....class{
@RequestMapping(value = "/testSessionAttributes")
public String testSessionAttributes(Model model) {
model.addAttribute("message","这是SessionAttributes的消息");
return "ok";
}
}
三、Application
@RequestMapping(value = "/testApplication")
public String testApplication(HttpServletRequest request) {
ServletContext servletContext = request.getServletContext();
servletContext.setAttribute("message", "这是进行Application的测试");
return "ok";
}