При использовании .jsp view spring mvc и передаче ModelAndView, как вывести модель? - PullRequest
2 голосов
/ 28 июня 2010

Если у меня есть modelandView вроде:

ModelAndView mav = new ModelAndView();

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

return mav;

Как вывести значение «message» в index.jsp?

А что если я передам:

mav.addObject("user", currentUser);

Кажется, документы сразу переходят к обработке форм.

Ответы [ 3 ]

5 голосов
/ 28 июня 2010

Вы можете вывести его, используя язык EL следующим образом:

$ {message} и $ {user}

В вашем JSP. Spring автоматически сканирует jsp и обрабатывает эти и другие выражения EL.

0 голосов
/ 11 сентября 2014

1- Если вы используете старый дескриптор JSP 1.2 , определенный DTD, например, 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-In JSP 2.0

Если вы используете стандартный JSP 2.0 дескриптор, определенный схемой w3c, например, 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.

0 голосов
/ 11 сентября 2014

Вы можете использовать

<c:if test="${message!=null}">
        ${message}
    </c:if>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...