Thymeleaf模板使用
Posted pannijingling
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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模板使用的主要内容,如果未能解决你的问题,请参考以下文章