Spring Web MVC : How to retrieve model (passed as map) in a view?

标签 spring jsp spring-mvc model

当使用带有两个参数的 ModelandView 构造函数时 - String viewName, Map model - 将多个参数传递给 View JSP,我该如何检索它们?

如果像 map 值一样检索它们,那么 map 名称是什么?

比方说,我的 Controller 代码具有以下内容:

    Map<String, Object> myModel = new HashMap<String, Object>();
    myModel.put("1", "one");
    myModel.put("2", "two");
    return new ModelAndView("view", myModel);

我需要在 JSP 中添加什么内容才能使“one”和“two”出现在页面上?

我正在使用 Java EE 7、Spring 3.2.4、GlassFish 4 服务器

更新:

已解决(请参阅已接受的答案)。

Since this post continues to receive downvotes I would like to point out that I posted what I unsuccessfully tried and what actually worked in my response to the accepted answer below on the same day the question was posted and answered.

最佳答案

模型对象将使用它们的键公开:

Map<String, Object> myModel = new HashMap<String, Object>();
myModel.put("myVar", "myValue");
return new ModelAndView("view", myModel);

在 JSP 文件中:

...
<p>${myVar}</p>
...

我不确定它是否适用于您给定的变量名称(12)。但我建议为变量使用真正好的名称,就像在 Java 代码中一样。

请注意,您可以创建 ModelAndView 而不必创建 Map,如下所示:

ModelAndView modelAndView = new ModelAndView("view");
modelAndView.add("myVar", "myValue");
return modelAndView;

关于Spring Web MVC : How to retrieve model (passed as map) in a view?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18394672/

相关文章:

java - Autowiring 注释不适用于@PostLoad

java - 无法在jsp中加载图像?

java - 如何将逻辑排除在 JSP 之外?

java - Spring:未找到带有 URI 的 HTTP 请求的映射

javascript - 如何使用服务器端验证生成客户端验证?

java - Spring MVC 基于注释的配置不起作用

css - spring security css 样式不起作用

java - 使用 Spring Security Filter 锁定除少数路由之外的所有内容

java - 休息模板 org.apache.http.NoHttpResponseException

java - Spring 在运行时覆盖属性并保持它们持久化