处理模型数据之ModelAndView

1、控制器处理方法的返回值如果为 ModelAndView, 则其既包含视图信息,也包含模型数据信息。
(1)添加模型数据
MoelAndView addObject(String attributeName, Object attributeValue);
(2)设置视图:
public void setViewName(String viewName);
(3)同时设置视图和模型数据
HashMap model = new HashMap();
model.put("beginDt", beginDt);
new ModelAndView(viewName, model);

2、案例一:分时设置视图和模型数据

(1)控制器TestRequestMappingController.java

package com.springmvc.web.controller;

import java.util.HashMap;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;

@Controller
@RequestMapping("/springmvc")
public class TestRequestMappingController {
	
	@RequestMapping("/testModelAndView1")
	public ModelAndView testModelAndView1() {
		ModelAndView modelAndView = new ModelAndView("success");
		modelAndView.addObject("username", "lipiaoshui");
		return modelAndView;
	}	
	
}

 (2)访问代码

<a href="<%=path%>/springmvc/testModelAndView1">Test ModelAndView1</a>

 3、案例二:通过构造函数同时设置视图和模型数据

(1)控制器TestRequestMappingController.java

package com.springmvc.web.controller;

import java.util.HashMap;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;

@Controller
@RequestMapping("/springmvc")
public class TestRequestMappingController {
	
	@RequestMapping("/testModelAndView2")
	public ModelAndView testModelAndView2() {
		HashMap<String, Object> model = new HashMap<String, Object>();
		model.put("username", "zhangsan");
		return new ModelAndView("success", model);
	}
	
}

(2)访问代码

<a href="<%=path%>/springmvc/testModelAndView2">Test ModelAndView2</a>

猜你喜欢

转载自lipiaoshui2015.iteye.com/blog/2253731
今日推荐