spring thymeleaf 自定义标签
概述
详细
一、准备工作
springboot默认的模板为thymeleaf,但是默认的模板有时候并不能完全满足业务场景,这个时候就可能需要根据业务场景,通过自定义标签来实现(JSP里使用JSTL),thymeleaf也支持自定义标签,还支持自定义属性。
thymeleaf实际上是xml模板,只是提供的标签及属性和html比较类似,如果对Java解析xml不熟悉的话请先看一下相关资料,学习一下Java如何解析xml,相关的资料网上一搜一大堆,这里不再赘述。
本例子中的自定义标签实现了一个根据模板中配置,把标签转换为div,并显示text属性的内容的功能;
自定义属性实现了一个把输出的内容使用星号(*)进行加密的功能,类似于身份证号某几位显示*号的功能。
二、程序实现
1、index.html中的tag:tabs相关的为自定义标签部分例子,input部分为自定义属性例子
2、实现思路怎样
thymeleaf实现自定义标签及自定义属性是通过AbstractDialect和AbstractProcessor实现的,TagDialect和TagProcessor是自定义标签的例子,SecurityTextDialect和SecurityTextProcessor是自定义属性的例子,WebConfig是TagDialect和SecurityTextDialect的配置信息
3、配置文件说明
配置文件很简单,没什么好说的,为application.yml(spring boot的默认配置文件)文件,如下图
内容如下:
三、运行效果
1、怎样发布、运行起来
例子直接执行com.springtest.Application即可运行,访问地址是http://localhost:8080,直接访问即可看到运行结果
2、运行时的截图
注:本文著作权归作者,由demo大师发表,拒绝转载,转载需要作者授权
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· 使用C#创建一个MCP客户端
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· Windows编程----内核对象竟然如此简单?