SpringBoot學習5.11-SpringMVC-數據模型寫法

1.綁定數據的三種對象

  • ModelAndView
  • ModelMap
  • Model

2.例子

package com.zyf.springMVC.mvcmodelandview;
import java.util.HashMap;
import java.util.Map;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
@Controller
@RequestMapping("/mvcmodelandview")
public class MvcModelAndViewController {
	@RequestMapping("mav1")
	public ModelAndView mav1(ModelAndView mav) {
		Map<String, Object> modelMap = new ModelMap();
		modelMap.put("name", "張三");
		mav.addAllObjects(modelMap);// ModelAndView保存map數據
		mav.addObject("id", "001");// ModelAndView保存鍵值數據
		User user = new User();
		user.setNote("備註信息");
		mav.addObject("user", user);// ModelAndView保存鍵值數據,值是一個對象
		mav.setViewName("mvcmodelandview/mav1");
		return mav;
	}
	@RequestMapping("mav2")
	public String mav2(Model model) {
		Map<String, Object> modelMap = new HashMap<String, Object>();
		modelMap.put("name", "張三");
		model.addAllAttributes(modelMap);
		model.addAttribute("id", "001");
		User user = new User();
		user.setNote("備註信息");
		model.addAttribute("user", user);
		return "mvcmodelandview/mav1";
	}
	@RequestMapping("mav3")
	public String mav3(ModelMap modelMap) {
		modelMap.put("name", "李四");
		modelMap.addAttribute("id", "002");
		User user = new User();
		user.setNote("備註信息2");
		modelMap.addAttribute("user", user);
		return "mvcmodelandview/mav1";
	}
}

前臺獲取數據html:

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
	<span>用戶名:</span><span th:text="${name}"></span><br/>
	<span>id:</span><span th:text="${id}"></span><br/>
	<span>備註:</span><span th:text="${user.note}"></span><br/>
</body>
</html>

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章