Spring 指南(了解视图模板)

5次阅读

共计 1124 个字符,预计需要花费 3 分钟才能阅读完成。

了解视图模板
模型—视图—控制器(MVC)软件设计模式是用于在软件应用程序内分离关注点的方法,原则上,应用程序逻辑或控制器与用于向用户或视图层显示信息的技术分离,该模型是控制器和视图层之间的通信工具。
在应用程序内,视图层可以使用一种或多种不同的技术来渲染视图,Spring 基于 Web 的应用程序支持各种视图选项,通常称为视图模板,这些技术被描述为“模板”,因为它们提供了一种标记语言,用于在服务器端渲染期间公开视图中的模型属性。
视图模板库
以下视图模板库与 Spring 兼容:

JSP/JSTL
Thymeleaf
Tiles
Freemarker
Velocity

JSP 和 Thymeleaf 比较
以下示例说明了如何使用 JSP 和 Thymeleaf 模板渲染相同的内容。
JSP
请注意此示例中的 JSTL(JavaServer 网页标准标签库)表达式。
<c:url var=”hotelsUrl” value=”/hotels”/>
<form:form modelAttribute=”searchCriteria” action=”${hotelsUrl}” method=”get” cssClass=”inline”>
<span class=”errors span-18″>
<form:errors path=”*”/>
</span>
<fieldset>
<div class=”span-8″>
<label for=”searchString”>SeaString:</label>
<form:input id=”searchString” path=”searchString”/>
</div>

</fieldset>
</form:form>
Thymeleaf
在此示例中,标记与标准 HTML 集成。
<form action=”#” th:object=”${searchCriteria}” th:action=”@{/hotels}” method=”get” class=”inline”>
<ul th:if=”${#fields.hasErrors(‘*’)}” class=”errors span-18″>
<li th:each=”err : ${#fields.errors(‘*’)}” th:text=”${err}”>Input is incorrect</li>
</ul>
<fieldset>
<div class=”span-8″>
<label for=”searchString”>Search String:</label>
<input type=”text” id=”searchString” th:field=”*{searchString}” />
</div>

</fieldset>
</form>

正文完
 0