ModelAndView例子
时间: 2023-05-26 22:02:43 浏览: 92
以下是一个使用ModelAndView返回视图和模型的示例:
```java
@RequestMapping("/welcome")
public ModelAndView welcome() {
ModelAndView mav = new ModelAndView();
mav.setViewName("welcome"); // 设置视图名称
mav.addObject("message", "欢迎访问我的网站"); // 设置模型数据
return mav;
}
```
在这个例子中,`ModelAndView`实例`mav`是控制器方法的返回值。视图名称设置为`welcome`,该视图将被解析为名为`welcome.jsp`的JSP文件。`message`是一个名称为`message`的模型属性,其值为`欢迎访问我的网站`。 JSP页面可以使用EL表达式`${message}`来获取此模型属性的值,并在页面上显示它。
我们可以在JSP页面上使用以下代码来显示这个模型属性的值:
```html
<body>
<h1>${message}</h1>
</body>
```
相关问题
ModelAndView
ModelAndView 是 Spring Framework 中的一个类,用于在控制器中处理请求并返回视图。它包含了模型对象和视图名称。模型对象用于存储处理结果,视图名称用于指示哪个视图将被呈现给用户。在处理完请求后,控制器将 ModelAndView 对象返回给 DispatcherServlet,由它来调用适当的视图解析器来解析视图名称并呈现相应的视图。
通常,控制器方法会创建一个 ModelAndView 对象,向其添加模型属性,设置视图名称,最后将其返回。例如:
```java
@RequestMapping("/hello")
public ModelAndView hello() {
ModelAndView modelAndView = new ModelAndView();
modelAndView.addObject("message", "Hello, world!");
modelAndView.setViewName("hello");
return modelAndView;
}
```
在这个例子中,控制器方法向 ModelAndView 对象中添加了一个名为 "message" 的模型属性,值为 "Hello, world!",以及设置了视图名称为 "hello"。在此之后,DispatcherServlet 会找到名为 "hello" 的视图,并将模型属性传递给它以呈现结果。
modelandview 作用
ModelAndView 是 Spring MVC 框架中常用的一个类,它的作用是封装模型数据和视图信息。具体来说,ModelAndView 包含一个 ModelMap 对象,用于存储模型数据,以及一个视图名称,用于指定要渲染的视图。
在 Spring MVC 中,控制器方法处理请求后需要返回一个 ModelAndView 对象,其中模型数据可以通过 ModelMap 对象添加,视图名称则可以通过 setViewName() 方法设置。Spring MVC 会根据视图名称找到要渲染的视图,并将模型数据传递给视图,最终生成响应结果。
例如,下面是一个简单的控制器方法,演示如何使用 ModelAndView:
```
@RequestMapping("/hello")
public ModelAndView hello() {
ModelAndView modelAndView = new ModelAndView();
modelAndView.addObject("message", "Hello World!");
modelAndView.setViewName("helloView");
return modelAndView;
}
```
在这个例子中,控制器方法返回一个 ModelAndView 对象,其中添加了一个名为 "message",值为 "Hello World!" 的模型数据,同时设置了视图名称为 "helloView"。Spring MVC 会根据视图名称找到对应的视图,将模型数据传递给视图进行渲染,并生成响应结果。
阅读全文