SpringMVC-共享数据
2024-01-08 09:32:20
使用servletapi向request 域对象 共享数据
再controller中编写方法
?//使用servletAPI向request域对象共享数据
?@RequestMapping("/testReq")
?public String req(HttpServletRequest request){
??
? ? ?request.setAttribute("testReq","hello,servletapi");
??
? ? ?return "success";
?}
在success.html 中
页面即显示 hello,servletapi?
使用 ModelAndView向request域对象 共享数据
?/**
? * 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
使用 Model向request域对象 共享数据
?@RequestMapping("/testModel")
?public String testModel(Model model){
? ? ?model.addAttribute("testModel","hello,model");
? ? ?return "success";
?}
在success.html 中 <p th:text="${testModel}"></p>
页面显示: hello,model
使用 map向request域对象 共享数据
?@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
使用 ModelMap向request域对象 共享数据
?@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的关系
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{} ?? ??
向session域共享数据
?@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 默认失效时间 半小时
向application域共享数据
?
@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
文章来源:https://blog.csdn.net/ly121862/article/details/135448919
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!