Повторное использование страницы шаблона в Spring MVC - PullRequest
5 голосов
/ 29 января 2010

Какая самая лучшая и самая простая технология из следующих?

Плитка, скорость или freemaker?

Спасибо.

1 Ответ

14 голосов
/ 29 января 2010

Нет «лучшего», но приятно знать, что JSP как технология представления уже предоставляет для этого тег <jsp:include>. Э.Г.

<!doctype html>
<html lang="en">
    <head>
        <title>SO question 2158749</title>
    </head>
    <body>
        <jsp:include page="menu.jsp" />
        <h1>Content</h1>
    </body>
</html>

где вы можете просто кодировать menu.jsp, как будто это часть родительской страницы:

<ul>
    <li><a href="home">Home</a></li>
    <li><a href="faq">FAQ</a></li>
    <li><a href="content">Content</a></li>
</ul>

Существует две "стандартные" альтернативы: директива @include и тег JSTL <c:import>.

Разница в том, что директива @include включает страницу во время времени компиляции (таким образом, это произойдет только один раз), тогда как <jsp:include> включает страницу во время времени выполнения который имеет то преимущество, что вы можете включить другой динамический контент).

Еще одно отличие <c:import> состоит в том, что он включает в себя сгенерированный вывод страницы и, следовательно, не исходный код , как <jsp:include> и @include. Основное преимущество <c:import> заключается в том, что вы можете таким образом включать внешние ресурсы. Э.Г.

<c:import url="http://google.com" />
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...