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中
var par =${parameter1};
console.log(par);//打印'随便写点东西'
//jsp页面,加载页面时候,将参数直接赋值给标签
版权声明:本文为JAVASCHOOL原创文章,未经本站允许不得转载。