簡體   English   中英

當使用.jsp的view spring mvc並傳遞ModelAndView時,如何輸出模型?

[英]When using .jsp's view spring mvc, and passing ModelAndView, how to output model?

如果我有一個modelandView像:

ModelAndView mav = new ModelAndView();

mav.setViewName("index");
mav.addObject("message", "hello, world");

return mav;

在index.jsp中,如何輸出“ message”的值?

如果我通過了怎么辦:

mav.addObject("user", currentUser);

看來文檔直接進入了表單處理。

您可以使用EL語言將其輸出,如下所示:

$ {message}和$ {user}

在你的jsp中。 Spring具有自動掃描jsp並處理這些和其他EL表達式的功能。

您可以使用

<c:if test="${message!=null}">
        ${message}
    </c:if>

1-如果使用的是DTD定義的舊JSP 1.2描述符,例如web.xml

<!DOCTYPE web-app PUBLIC
 "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
 "http://java.sun.com/dtd/web-app_2_3.dtd" >

<web-app>
//...
</web-app>

默認情況下, EL是禁用或忽略的,您必須手動啟用它,以便它將輸出值存儲在message模型中。

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<html>
<head>
<%@ page isELIgnored="false" %>
</head>
<body>
           ${message}
</body>
</html>

2-在JSP 2.0中

如果使用的是由w3c模式定義的標准JSP 2.0描述符,例如web.xml

<web-app id="WebApp_ID" version="2.4" 
    xmlns="http://java.sun.com/xml/ns/j2ee" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 
    http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
//...
</web-app>

EL默認情況下處於啟用狀態 ,您應該看到message模型中存儲的值hello world

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM