再controller中编写方法
?//使用servletAPI向request域对象共享数据
?@RequestMapping("/testReq")
?public String req(HttpServletRequest request){
??
? ? ?request.setAttribute("testReq","hello,servletapi");
??
? ? ?return "success";
?}
在success.html 中
页面即显示 hello,servletapi?
?/**
? * ModelAndView 包含Model 和View的功能
? * Model 主要用于向请求域共享数据
? * View 主要用于设置视图,实现页面跳转
? * @return
? */
?@RequestMapping("/testModelAndView")
?public ModelAndView testModelAndView(){
? ? ?ModelAndView mav = new ModelAndView();
? ? ?//设置视图名称
? ? ?mav.setViewName("success");
? ? ?//处理模型数据,即向请求域request共享数据
? ? ?mav.addObject("testMV","hello,mv");
? ? ?return mav;
?}
在success.html 中 <p th:text="${testMV}"></p>
页面显示: hello,mv
?@RequestMapping("/testModel")
?public String testModel(Model model){
? ? ?model.addAttribute("testModel","hello,model");
? ? ?return "success";
?}
在success.html 中 <p th:text="${testModel}"></p>
页面显示: hello,model
?@RequestMapping("/testMap")
?public String testMap(Map<String,Object>map){
? ? ?map.put("testMap","hello,map");
? ? ?return "success";
?}
在success.html 中 <p th:text="${testMap}"></p>
页面显示: hello,map
?@RequestMapping("/testModelMap")
?public String testModelMap(ModelMap map){
? ? ?map.put("testModelMap","hello,modelmap");
? ? ?return "success";
?}
在success.html 中 <p th:text="${testModelMap}"></p>
页面显示: hello,modelmap
Model,ModelMap,Map类型的参数其实本质上都是 BindingAwareModelMap类型的
?public interface Model{} ?public class ModelMap extends LinkedHashMap<String,Object>{} ?public class ExtendedModelMap extends ModelMap implements Model{} ?public class BindingAwareModelMap extends ExtendedModelMap{} ?? ??
?@RequestMapping("/tesSession")
?public String tesSession(HttpSession session){
? ? ?session.setAttribute("tesSession","hello,session");
? ? ?return "success";
?}
在success.html 中 <p th:text="${session.tesSession}"></p>
页面显示: hello,session
session 默认失效时间 半小时
?
@RequestMapping("/testApplication")
?public String testApplication(HttpSession session){
? ? ?ServletContext application = session.getServletContext();
? ? ?application.setAttribute("testApplication","hello,Application");
? ? ?return "success";
?}
在success.html 中 <p th:text="${application.testApplication}"></p>
页面显示: hello,Application