Spring Boot实战:模板引擎

MVT模型<->前后端不分离&前后端分离&模板引擎 一、前后端不分离与前后端分离的比较 前后端不分离特点: 后端需控制数据的展示 前后端不分家,耦合严重 返回的是HTML页面,适应性、拓展性差 只能用于浏览器,其它终端不匹配 前后端分离的特点: 当前主流 后端只对数据进行处理,只提供数据 前端效率、页面好不好看,全由前端负责,前后端完全独立 解耦合 前后端同时开发,缩小业务上线周期 绝大多数情况下,前端发送json格式的参数,后端同样以json格式的数据返回 适应性、拓展性好 适合多终端运行同一套接口(PC、APP、小程序等) 二、MVT模型   mvt模型 阅读详情

  虽然现在很多开发,都采用了前后端完全分离的模式,即后端只提供数据接口,前端通过AJAX请求获取数据,完全不需要用的模板引擎。这种方式的优点在于前后端完全分离,并且随着近几年前端工程化工具和MVC框架的完善,使得这种模式的维护成本相对来说也更加低一点。但是这种模式不利于SEO,并且在性能上也会稍微差一点,还有一些场景,使用模板引擎会更方便,比如说邮件模板。这篇文章主要讨论Spring boot与模板引擎Thymeleaf、Freemaker以及JSP的集成。

一、集成Thymeleaf

  第一步:引入jar包(thymeleaf对应的starter):

1

2

3

4

<dependency>

    <groupId>org.springframework.boot</groupId>

    <artifactId>spring-boot-starter-thymeleaf</artifactId>

</dependency>

  第二步:配置thymeleaf:

1

2

3

4

5

6

7

8

9

spring:

  thymeleaf:

    prefix: classpath:/templates/

    check-template-location: true

    cache: false

    suffix: .html

    encoding: UTF-8

    content-type: text/html

    mode: HTML5

  prefix:指定模板所在的目录

  check-tempate-location: 检查模板路径是否存在

  cache: 是否缓存,开发模式下设置为false,避免改了模板还要重启服务器,线上设置为true,可以提高性能。

  encoding&content-type:这个大家应该比较熟悉了,与Servlet中设置输出对应属性效果一致。 

  mode:这个还是参考官网的说明吧,并且这个是2.X与3.0不同,本文自动引入的包是2.15。

   第三步 编写thymeleaf模板文件:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

<!DOCTYPE HTML>

<html xmlns="http://www.w3.org/1999/xhtml" xmlns:th="http://www.thymeleaf.org">

<head>

    <meta content="text/html;charset=UTF-8"/>

</head>

<body>

<h6>Thymeleaf 模板引擎</h6>

<table border="1" bgcolor="#f0ffff">

    <thead>

    <tr>

        <th>序号</th>

        <th>标题</th>

        <th>摘要</th>

        <th>创建时间</th>

    </tr>

    </thead>

    <tbody th:each="article : ${list}">

    <tr>

        <td th:text="${article.id}"></td>

        <td th:text="${article.title}"></td>

        <td th:text="${article.summary}"></td>

        

Thymeleaf模板引擎实战:Spring Boot动态页面渲染入门 在Web开发中,模板引擎是连接后端数据与前端页面的关键桥梁。Spring Boot作为主流Java开发框架,官方推荐使用Thymeleaf作为模板引擎,其核心优势在于“自然模板”设计——模板文件本身是合法的HTML,浏览器可直接预览,再由后端通过th:*属性动态渲染数据。这种模式兼顾了前端协作效率与后端逻辑控制,相比传统JSP或FreeMarker,Thymeleaf语法更贴合HTML结构,且与Spring Boot集成度高,配置简单。本文从模板引擎选型出发,讲解如何引入依赖、配置缓存与编码、遵循目录约定, 阅读详情

相关推荐

Thymeleaf模板引擎:从核心语法到Spring Boot集成与PDF生成实战

模板引擎是现代Web开发中分离视图与业务逻辑的关键技术,它通过特定的语法规则将动态数据嵌入静态模板,实现页面的动态渲染。其核心原理在于解析模板中的占位符或指令,并用服务器端的数据进行替换,最终生成可响应的HTML。这项技术的价值在于提升开发效率、保证代码可维护性,并促进前后端协作。在Java生态中,模板引擎广泛应用于MVC架构的视图层,特别是在Spring Boot构建的Web应用中。本文聚焦Thymeleaf这一“自然模板”引擎,它允许模板文件作为合法的HTML被浏览器直接预览,同时通过丰富的表达式语法(

weixin_33694620的博客 370

Spring Boot 整合 JSP 模板引擎:从原理到实战指南

本文全面介绍Spring Boot整合JSP模板引擎的技术方案。首先解析模板引擎的基础概念和工作原理,对比不同类型模板引擎的特点。重点讲解JSP核心技术,包括语法结构、三大指令和九大内置对象。详细演示JSTL标签库和EL表达式的实战应用,提供条件判断和循环遍历的代码示例。最后给出Spring Boot整合JSP的完整实现:从Maven依赖配置、项目目录结构规范,到控制器与JSP页面的集成开发,并附有完整的员工信息列表示例代码。该方案实现了视图与业务逻辑的分离,适用于传统Web应用开发场景。

勤奋的码农 69

Spring Boot 大型线上商城项目实战教程:Thymeleaf 模板引擎技术介绍及整合

随着技术的发展,JSP+Servlet的开发方式渐渐无法完整支持业务需求。一个中小型项目全部使用JSP+Servlet进行开发和维护,其成本会很高。至于大型项目,以此开发简直就是一场灾难,其开发成本、迭代成本、维护成本将会更高。真正的企业应用开发有几个比较重要的关注点:代码复用、标准化、可维护性、开发成本。而JSP+Servlet的封装和抽象程度与框架技术相比就毫无优势可言。由此,业务的增长需求也反向驱动着技术的进步,间接催生出很多JSP+Servlet的替代方案和封装度更好的技术框架。

斌擎科技 412

Simulink+Simscape多体仿真:六自由度Stewart平台动力学建模全流程

本文详细介绍了使用Simulink和Simscape Multibody进行六自由度Stewart平台动力学建模的全流程,涵盖从CAD模型导入、运动学逆解计算到实时控制系统的设计。通过MATLAB/Simulink与Simscape的协同工作,实现高保真度的并联机器人仿真,适用于飞行模拟器、精密加工等高精度领域。

r2s3t4的博客 486

Goldwasser-Micali 公钥加密系统

1、二次剩余问题 对于整数n ,定义Zn∗={a∈Zn,gcd(a,n)=1}Z^*_n=\{ a∈Z_n,gcd(a,n) =1\}Zn∗​={a∈Zn​,gcd(a,n)=1} 。当存在d∈Znd \in Z_nd∈Zn​ ,使得 d2≡a mod nd^2 \equiv a \, mod \,nd2≡amodn ,称 a 为模 n 的二次剩余;否则称 a 为模 n的二次非剩余。判断 a 是否为模 n 的二次剩余的问题称为模n 的二次剩余问题。 \rule[-10pt]{14.3cm}{0.05em}

不染心的博客 4312

云模型在综合评价过程中的应用

目录 1 云模型标尺(标准云模型)的构建方法 1.1 通过正态云的“3En 规则”来表示评价论域 1.2 通过论域的边界值隶属度相等来表示评价论域 1.3 通过黄金分割法来表示评价论域 2 确定评价结果的过程 2.1 基本云发生器 2.2 X条件云发生器 2.3 两种方法的区别 综合评价问题一般分为以下六个步骤 1、明确评价目的; 2、确定被评价对象; 3、建立评价指标体系(包括收集评价指标的原始值、评价指标的若干预处理等); 4、确立与各项评价指标相对应的权重系数; 5、选..

weixin_62223576的博客 1万+

从PSDK到ROS节点:实战GPS数据发布与CMake配置

本文详细介绍了如何从大疆PSDK获取GPS数据并封装为ROS节点的实战过程,包括PSDK编译、GPS数据订阅、ROS节点实现及CMake配置优化。通过具体代码示例和调试技巧,帮助开发者快速实现无人机传感器数据与ROS系统的集成,提升开发效率。

weixin_30843605的博客 457

PicoRV32 笔记 05

PicoRV32 本地总线接口

jjinl的专栏 1574

sap资产post记录查询时候 报错 如图

SAP资产过账查询报错AA653解决方案摘要 错误原因:系统无法计算会计年度期间的最后一天,导致资产折旧/过账失败。常见原因包括:1)未创建2025年期间版本;2)期间日期映射不完整;3)依赖日历但未生成2025年日历。 解决方法: 通过OB37维护2025年12/13个完整期间 补充缺失期间或修正结束日期 使用SCAL生成2025年工厂日历 验证步骤: 检查T009R表2025年记录完整性 测试AFAB折旧运行 重新查询资产过账 提示:建议财务团队统一维护跨年度期间数据,并在测试系统验证变更。

金牌架构师 834

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

上一篇: 深入浅出 JVM ClassLoader,如何去理解
下一篇: [Java面经分享] 关于面试的二三事.
奇迹摘星w
博客等级 码龄5年 1844粉丝 189原创
评论 7
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值