Yuque Archive
寻常的路

在Spring Boot中使用Thymeleaf

代码可以从路由加载模板文件就可以。

环境准备

使用Spring Initializr构建项目,注意在Dependencies栏选择Thymeleaf

模板文件

在资源文件夹新建目录templates,这是Thymeleaf的默认配置,将模板文件放入其中:

src/main/resources/templates/index.html

h1标签显示了变量hello的内容。注意在标签体内写入内容是无效的。

模板配置

在application.properties中添加配置,关闭Thymeleaf的缓存:

当然,Thymeleaf的其它配置项可以使用相同的方式写入。

控制器

写一个控制器来转发路由:

src/main/java/net/smallyu/java/HelloController.java

控制器代码很简单,接收来自hello的请求,设置了入参map的一对键值,键为hello,即模板中调用的变量名。方法的返回值类型为String,用于指定返回模板目录下的哪个模板文件。这里返回了index,程序将找到并返回index.html

运行

启动Spring Boot,访问 http://localhost:8080/hello,页面显示出了Hello Thymeleaf!

使用静态资源

静态资源由Spring Boot控制,需要遵循一些命名规范。比如新建目录:

src/main/resources/static

在目录中放入静态资源,一张图片1.png和一个css文件main.css。css文件的内容为:

相应的修改模板文件index.html,在<head>之间加入css引用:

注意引用路径直接为main.css,而不是相对路径../static/main.css。在<h1>后面加入img引用:

重启应用,访问 http://localhost:8080/hello,页面背景色变为#def,图片也正常加载出来。