首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >来自Spring MVC的ModelAndView中的模型是什么?

来自Spring MVC的ModelAndView中的模型是什么?
EN

Stack Overflow用户
提问于 2011-02-20 13:07:53
回答 4查看 140.9K关注 0票数 87

具有以下基本功能

代码语言:javascript
复制
protected ModelAndView handleRequestInternal(...) {
    ...
    return new ModelAndView("welcomePage", "WelcomeMessage", message);
}

我知道这将返回modelandView。我知道welcomePage是我的视图名,所以这意味着像welcomepage.jsp这样的东西将被调用。

但我对什么是Model part感到困惑。什么是WelcomeMessagemessage以及模型在该场景中是如何工作的?

EN

回答 4

Stack Overflow用户

发布于 2011-02-20 13:25:51

代码语言:javascript
复制
new ModelAndView("welcomePage", "WelcomeMessage", message);

是以下的简写

代码语言:javascript
复制
ModelAndView mav = new ModelAndView();
mav.setViewName("welcomePage");
mav.addObject("WelcomeMessage", message);

查看上面的代码,您可以看到视图的名称是"welcomePage“。您的ViewResolver (通常在.../WEB-INF/spring-servlet.xml中设置)会将其转换为视图。代码的最后一行在模型(addObject("WelcomeMessage", message))中设置一个属性。这就是模型发挥作用的地方。

票数 25
EN

Stack Overflow用户

发布于 2011-02-20 13:23:19

这一切都由the constructor的javadoc来解释。它是一个方便的构造函数,可以用一个属性/值对填充模型。

所以..。

代码语言:javascript
复制
   new ModelAndView(view, name, value);

等同于:

代码语言:javascript
复制
   Map model = ...
   model.put(name, value);
   new ModelAndView(view, model);
票数 16
EN

Stack Overflow用户

发布于 2011-02-20 13:14:32

WelcomeMessage只是message (带数据的实际模型)的一个变量名。基本上,您在这里将模型与welcomePage绑定在一起。模型(消息)将以WelcomeMessage的形式在welcomePage.jsp中提供。下面是一个更简单的例子:

代码语言:javascript
复制
ModelAndView("hello","myVar", "Hello World!");

在本例中,我的模型是一个简单的字符串(在应用程序中,这将是一个POJO,其中包含从DB或其他源获取的数据)。我将它分配给myVar,我的视图是hello.jsp。现在,我可以在hello.jsp中使用myVar,我可以将其用于显示。

在视图中,您可以访问数据:

代码语言:javascript
复制
${myVar}

类似地,您将能够通过WelcomeMessage变量访问模型。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5055358

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档