Spring 指南(了解视图模板)

菩提祖师
• 阅读 1856

了解视图模板

模型—视图—控制器(MVC)软件设计模式是用于在软件应用程序内分离关注点的方法,原则上,应用程序逻辑或控制器与用于向用户或视图层显示信息的技术分离,该模型是控制器和视图层之间的通信工具。

在应用程序内,视图层可以使用一种或多种不同的技术来渲染视图,Spring基于Web的应用程序支持各种视图选项,通常称为视图模板,这些技术被描述为“模板”,因为它们提供了一种标记语言,用于在服务器端渲染期间公开视图中的模型属性。

视图模板库

以下视图模板库与Spring兼容:

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>

点赞
收藏
评论区
推荐文章
Easter79 Easter79
4年前
Vue 入门
Vue.js是构建用户界面的MVVM框架 ,只关注视图层Vue将DOM和数据绑定起来,一旦创建了绑定,DOM将和数据保持同步,每当变更了数据,DOM也会相应地更新。这样就减少了不必要的DOM操作提高渲染效率,让前端程序员只需要关心业务逻辑不再关心DOM是如何渲染的MVC和MVVM的区别:MVC是后端分层开发概念,MVVM是前端视图层
Easter79 Easter79
4年前
springMVC的简单了解和环境搭建
一,什么mvc模型视图控制器(MVC)是一个众所周知的以设计界面应用程序为基础的设计思想。它主要通过分离模型、视图及控制器在应用程序中的角色将业务逻辑从界面中解耦。通常,模型负责封装应用程序数据在视图层展示。视图仅仅只是展示这些数据,不包含任何业务逻辑。控制器负责接收来自用户的请求,并调用后台服务(eservice 或者 dao)来
劳伦斯 劳伦斯
4年前
前端面试题自检 Vue 网络 浏览器 性能优化部分
框架VueMVVM是什么?ModelViewViewModel,Model表示数据模型层。view表示视图层,ViewModel是View和Model层的桥梁,数据绑定到viewModel层并自动渲染到页面中,视图变化通知viewModel层更新数据。Vue的生命周期
Stella981 Stella981
4年前
Spring MVC controller简单处理301跳转
一、SpringMVC301,302跳转springmvc项目是spring的一个子项目用于处理视图层的请求。302跳转很简单:@RequestMapping(value"blog.html")publicStringrindex(){return"re
Stella981 Stella981
4年前
RequestMappingHandlerMapping 详解
我们先理简单梳理一个关系关系梳理1.springioc是spring的核心,用来管理springbean的生命周期2.MVC是一种使用MVC(ModelViewController模型视图控制器)设计创建Web应用程序的模式3.springmvc是spring的一个独立的模块,就像AOP一样在s
Stella981 Stella981
4年前
ASP.NET MVC 5
MVC代表:_模型__\__视图__\__控制器_。MVC是一个架构良好并且易于测试和易于维护的开发模式。基于MVC模式的应用程序包含:·Models:表示该应用程序的数据并使用验证逻辑来强制实施业务规则的数据类。·Views:应用程序动态生成HTML所使用的模板文件。·Controllers:
Stella981 Stella981
4年前
Android MVP模式
1、MVP模式简介相信大家对MVC都是比较熟悉了:MModel模型、VView视图、CController控制器,MVP作为MVC的演化版本,那么类似的MVP所对应的意义:MModel模型、VView视图、PPresenter表示器。从MVC和MVP两者结合来看,Controlller/Pre
Wesley13 Wesley13
4年前
Java核心技术 卷1 基础知识—Swing用户组件及JAR
《第12章Swing用户组件》Swing设计者采用了模型视图控制器(modelviewcontroller,MVC)模式来设计用户组件它限制了一个对象拥有的功能数量,在设计组件时一般实现三个独立的类:模型(model):存储内容,必须实现改变内容或者查找内容的方法,模型是完全不可见的视图(view):显示内容,即
Stella981 Stella981
4年前
Django框架介绍
 Django框架简介MVC框架和MTV框架(了解即可)MVC,全名是ModelViewController,是软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model)、视图(View)和控制器(Controller),具有耦合性低、重用性高、生命周期成本低等优点。
Stella981 Stella981
4年前
Noark入门之协议映射
0x00消息控制器消息控制器,主要作用就是为每个模块提供消息处理的入口.这里的消息不仅仅是协议,还有内部指令,事件等等逻辑入口,这也是为了响应线程模型作出的一种支撑,只要入口在此消息控制器内,那必然走期望的线程调度。@Controller用于标识一个类为当前模块的消息控制器入口.@Controller(threadGroup
程序员小五 程序员小五
1年前
融云IM干货丨uni-app中插件的选择会影响项目性能吗?
插件的选择确实会对UNIapp项目的性能产生影响。以下是一些关键点,说明插件选择如何影响性能:1.逻辑层和视图层的通信折损:非H5端的各个平台,包括App和各种小程序,其逻辑层和视图层是分离的,两层之间通信交互会有折损,导致诸如跟手滑动不流畅。uniui在