thymeleaf动态渲染html
发表于|更新于
|浏览量:
君子忍人所不能忍,容人所不能容,处人所不能处。——邓拓
我们可以使用thymeleaf进行动态渲染html内容
假设我的整个页面都是字符串,例如如下格式:
1 | "<!DOCTYPE html>\n" + |
那我们渲染的话,其实可以直接新建一个页面,用[(${page})]语法,例如
1 | [(${articleText})] |

这里articleText就是我们后端setAttribute进去的
然后就能成功渲染页面上去
相关推荐
2024-09-07
springboot单向推送给客户端SseEmitter
教育人就是要培养他对自己有更严格的要求。——苏霍姆林斯基 SseEmitter 是 Spring Framework 提供的一个类,用于处理服务器向客户端推送事件(Server-Sent Events, SSE)的功能。与 WebSocket 不同,SSE 是单向的,服务器可以推送数据到客户端,但客户端不能推送数据到服务器。SSE 适用于场景包括实时消息通知、进度更新、数据流推送等。Spring Boot 中通过 SseEmitter 实现 SSE 通信简单且高效。 Spring Boot 中的 SseEmitter 提供了一种轻量级的方式来向前端推送实时数据,它通过标准的 HTTP 协议工作,兼容性广泛且易于使用。 SseEmitter 的主要特点: 轻量级:基于 HTTP 协议,兼容性好,不需要复杂的配置。 单向推送:服务器向客户端推送数据,适合需要实时更新的场景。 长连接:通过持续连接,避免频繁的轮询操作。 官方文档、GitHub地址 官方文档:Spring SseEmitter Documentation GitHub 仓库:Spring Framework...
2022-12-17
获取lambda代理
伯乐不可欺以马,君子不可欺以人——荀子 代码如下: 123MethodHandles.Lookup lookup = MethodHandles.lookup(); MethodHandle getR = lookup.findVirtual(B.class, "getR", MethodType.methodType(Object.class)); SerFunc<Object, B> lambda = MethodHandleProxies.asInterfaceInstance(SerFunc.class, getR); 此处的lambda代理对象同样可以执行lambda对应的方法
2023-10-25
多端IM通信层框架MobileIMSDK
对可耻行为的追悔是对生命的拯救。——德谟克里特 今天看了这篇文章: 万字长文:手把手教你实现一套高效的IM长连接自适应心跳保活机制 其中理论对应实践的开源项目: https://github.com/JackJiang2011/MobileIMSDK MobileIMSDK是一套专为移动端开发的原创IM通信层框架: 历经10年、久经考验; 超轻量级、高度提炼,lib包50KB以内; 精心封装,一套API优雅支持UDP 、TCP 、WebSocket 三种协议(可能是全网唯一开源的); 客户端支持iOS、Android、标准Java、H5(暂未开源)、小程序(暂未开源)、Uniapp(暂未开源); 服务端基于Netty,性能卓越、易于扩展;👈 可与姊妹工程 MobileIMSDK-Web 无缝互通实现网页端聊天或推送等;👈 可应用于跨设备、跨网络的聊天APP、企业OA、消息推送等各种场景。 MobileIMSDK工程自2013年10月起持续升级至今(当前最新版是v6.4,版本更新日志点此查看 ),历经10年,起初用作某自用产品的即时通讯底层,完全从零开发。2023年...
2023-12-28
spring注解排除某些bean
劳动是唯一导向知识的道路。——萧伯纳 使用: 12@ComponentScan(excludeFilters = {@ComponentScan.Filter(type = FilterType.ASSIGNABLE_TYPE, value = {WillExludeBean.class, AnotherWillExludeBean.class})}) 即可 这里还有其他的过滤类型 例如注解 123@ComponentScan(excludeFilters = @Filter( type = FilterType.ANNOTATION, value = Service.class)) 切面 123@ComponentScan(includeFilters = @Filter( type = FilterType.ASPECTJ, pattern = "com.example..*Service+")) 正则 123@ComponentScan(includeFilters ...
2024-03-26
idea下载不下来maven三方库源码处理(二)
把每一个黎明看作是生命的开始,把每一个黄昏看作你生命的小结。——罗斯金 实际上我这里就是因为配置maven镜像不正确导致的: 原先我的配置: 123456<mirror> <id>nexus-tencentyun</id> <mirrorOf>central</mirrorOf> <name>Nexus tencentyun</name> <url>http://mirrors.cloud.tencent.com/nexus/repository/maven-public/</url></mirror> 现在: 123456<mirror> <id>nexus-tencentyun</id> <mirrorOf>*</mirrorOf> <name>Nexus tencentyun</name> <url>htt...
2021-03-05
避免list中remove导致ConcurrentModificationException
凡不是就着泪水吃过面包的人是不懂得人生之味的人——歌德 我们在list循环中调用remove函数删除自身元素可能会导致java.util.ConcurrentModificationException 例如 1234// 构造从0到20的listList<Integer> list = Stream.iterate(0, i -> ++i).limit(20).collect(Collectors.toList());// 删除list.forEach(list::remove); 首先我们可以使用removeIf代替 1list.removeIf(i -> i.equals(i)); 其次我们可以使用迭代器 我们可以看到removeIf的源码正是使用了迭代器 如下 12345Iterator<Integer> iterator = list.iterator();while (iterator.hasNext()) { Integer nowNumber = iterator.next(); iterator....

阿超
我的名字叫阿超 年龄25岁 家在北京市 职业是软件开发 每天最晚也会在八点前回家 不抽烟 酒浅尝辄止 晚上十二点上床 保证睡足八个小时 睡前写一篇博客 再做二十分钟俯卧撑暖身 然后再睡觉 基本能熟睡到天亮 像婴儿一样不留下任何疲劳和压力 就这样迎来第二天的早晨 健康检查结果也显示我很正常 我想说明我是一个不论何时都追求内心平稳的人 不拘泥于胜负 不纠结于烦恼 不树立使我夜不能寐的敌人 这就是我在这社会的生活态度
Follow Me公告
This is my Blog