五陵年少金市东,银鞍白马渡春风。这篇文章主要讲述Thymeleaf模板使用相关的知识,希望能为你提供帮助。
文章图片
< dependency>
< groupId> ognl< /groupId>
< artifactId> ognl< /artifactId>
< version> 3.1.12< /version>
< /dependency>
## 2. 模板文件编写
### 2.1 html模板文件
```html
<
!DOCTYPE html>
<
html>
<
head>
<
meta charset="UTF-8">
<
title>
Insert title here<
/title>
<
/head>
<
body>
<
h2 th:text="${hello}">
<
/h2>
<
/body>
<
/html>
2.2 txt模板文件
public interface [(${javaTableName})]Ser {
}
## 3. 根据模板生成文件
### 3.1 生成Html文件
```java
import java.io.FileWriter;
import java.io.IOException;
import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;
import org.thymeleaf.TemplateEngine;
import org.thymeleaf.context.Context;
import org.thymeleaf.templateresolver.ClassLoaderTemplateResolver;
@SpringBootTest
class AppTests {
@Test
public void createTemplate() throws IOException {
//创建模版加载器
ClassLoaderTemplateResolver resolver = new ClassLoaderTemplateResolver();
resolver.setPrefix("templates/html/");
//模板文件的所在目录
resolver.setSuffix(".html");
//模板文件后缀
//创建模板引擎
TemplateEngine templateEngine = new TemplateEngine();
//将加载器放入模板引擎
templateEngine.setTemplateResolver(resolver);
//创建字符输出流并且自定义输出文件的位置和文件名
FileWriter writer = new FileWriter("F:/codeInfo/index.html");
//创建Context对象(存放Model)
Context context = new Context();
//放入数据
context.setVariable("hello", "我去,太赞了");
//创建静态文件,"list"是模板的文件名称
templateEngine.process("list",context,writer);
System.out.println("执行完毕");
}
}
文章图片
### 3.2 生成java文件
```java
import java.io.FileWriter;
import java.io.IOException;
import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;
import org.thymeleaf.TemplateEngine;
import org.thymeleaf.context.Context;
import org.thymeleaf.templateresolver.ClassLoaderTemplateResolver;
@SpringBootTest
class AppTests {
@Test
public void createTemplate() throws IOException {
//创建模版加载器
ClassLoaderTemplateResolver resolver = new ClassLoaderTemplateResolver();
resolver.setPrefix("templates/java/");
// 模板文件的所在目录
resolver.setSuffix(".java.txt");
// 模板文件后缀
resolver.setCharacterEncoding("UTF-8");
// 读取模板资源的字符编码
resolver.setCacheable(false);
// 是否缓存//创建模板引擎
TemplateEngine templateEngine = new TemplateEngine();
//将加载器放入模板引擎
templateEngine.setTemplateResolver(resolver);
//创建Context对象(存放Model)
Context context = new Context();
//放入数据
context.setVariable("controllerPackage", "com.qfx.main.controller");
context.setVariable("servicePackage", "com.qfx.main.service");
context.setVariable("javaTableName","SysUser");
//创建字符输出流并且自定义输出文件的位置和文件名
//创建静态文件,"service"是模板的文件名称
FileWriter writer = new FileWriter("F:/codeInfo/SysUserService.java");
templateEngine.process("service",context,writer);
//创建字符输出流并且自定义输出文件的位置和文件名
writer = new FileWriter("F:/codeInfo/SysUserController.java");
//创建静态文件,"controller"是模板的文件名称
templateEngine.process("controller",context,writer);
System.out.println("执行完毕鸟。。。");
}
}
文章图片
public interface SysUserSer {
【Thymeleaf模板使用】}
推荐阅读
- Java ASM系列((066)Exception处理)
- centos7网络配置一些问题
- Spring(IOC是啥(如何推导和理解?))
- Python实现批量压缩文件/文件夹——zipfile
- centos7网络配置一些问题_李孟_新浪博客
- SpringCloud升级之路2020.0.x版-23.订制Spring Cloud LoadBal
- 如何优化 node 项目的 docker 镜像(像老板压榨员工一样压榨镜像)
- Java技术指南「TestNG专题」单元测试框架之TestNG使用教程指南(上)
- table布局的坏处