ModelAndView传值到JSP页面的四种方法
SpringMVC提供的ModelAndView本质上就是 把传入给它的值加入到request对象中,然后在相对应的jsp中使用EL表达式将值取出来展示或处理。
ModelAndView常用传值方法
1. 直接将值和路径放到构造方法中返回
@RequestMapping(value = "/home") public ModelAndView home(HttpServletRequest request, HttpServletResponse response){ Listlist=new ArrayList(); list.add("aaa"); list.add("bbb"); list.add("ccc"); return new ModelAndView("back/index", "list", list);//直接将值和路径放到构造方法中返回 }
2. 使用ModelAndView的addObject方法返回list
@RequestMapping(value = "/home") public ModelAndView home(HttpServletRequest request, HttpServletResponse response){ Listlist=new ArrayList(); list.add("aaa"); list.add("bbb"); list.add("ccc"); ModelAndView mav=new ModelAndView(); mav.setViewName("back/index");//返回路径 mav.addObject("list", list);//使用ModelAndView的addObject方法将list放进去 return mav; }
3. 使用ModelAndView的addObject方法返回map
@RequestMapping(value = "/home") public ModelAndView home(HttpServletRequest request, HttpServletResponse response){ Mapmap=new HashMap (); map.put("PK", "北京"); map.put("SH", "上海"); ModelAndView mav=new ModelAndView(); mav.setViewName("back/index");//返回路径 mav.addObject("map", map); return mav; }
4. ModelAndView返回多个对象
@RequestMapping(value = "/home") public ModelAndView home(HttpServletRequest request, HttpServletResponse response){ Mapmap=new HashMap (); map.put("PK", "北京"); map.put("SH", "上海"); return new ModelAndView("back/index","map", map).addObject("msg", "我要返回值"); }
例子
实例一
//controller.java @RequestMapping("/test") public ModelAndView test(){ ModelAndView mav=new ModelAndView("hello"); mav.addObject("time", new Date()); mav.getModel().put("name", "caoyc"); return mav; } //jsp页面 time:${requestScope.time} name:${name }
实例二
//后端代码 @RequestMapping("/index") public ModelAndView page() { ModelAndView view = new ModelAndView("index.jsp"); view.addObject("parameter1", "java教程网www.51gjie.com"); return view; } //js要写在jsp中 <script> var par =${parameter1}; console.log(par);//打印'随便写点东西' </script> //jsp页面,加载页面时候,将参数直接赋值给标签 <input type="hidden" value="${parameter1}">
版权声明:本文为JAVASCHOOL原创文章,未经本站允许不得转载。