在Spring MVC框架中,ModelAndView
对象用于将模型数据和视图名称组合在一起,以便在控制器和视图之间传递信息。要在ModelAndView
中添加多个模型对象,只需将它们添加到Map
中,其中键是属性名称,值是要传递的对象。以下是一个示例:
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
@Controller
public class MyController {
@GetMapping("/example")
public ModelAndView example(Model model) {
// 创建两个模型对象
ModelObject obj1 = new ModelObject("Object 1");
ModelObject obj2 = new ModelObject("Object 2");
// 将模型对象添加到Model中
model.addAttribute("object1", obj1);
model.addAttribute("object2", obj2);
// 创建一个ModelAndView对象并返回
return new ModelAndView("exampleView");
}
}
在这个例子中,我们创建了一个名为example
的控制器方法,它接受一个Model
参数。我们创建了两个ModelObject
实例,并将它们添加到模型中,分别使用属性名称object1
和object2
。最后,我们创建了一个ModelAndView
对象,将视图名称设置为exampleView
,并将其返回。
在视图中(例如Thymeleaf模板),您可以使用这些属性名称访问模型对象:
<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
<title>Example</title>
</head>
<body>
<h1>Object 1: {{ object1.name }}</h1>
<h1>Object 2: {{ object2.name }}</h1>
</body>
</html>
在这个例子中,我们使用Thymeleaf模板引擎访问object1
和object2
的name
属性,并在视图中显示它们。