开发工具与关键技术:idea,
作者:农村扛粑子
撰写时间:2021年6月8日
前端交给我们的页面,是html页面。我们以前开发,我们需要把他们转成jsp页面,jsp好处就是当我们查出一些数据转发到JSP页面以后,我们可以用jsp轻松实现数据的显示,及交互等。看一下这张图:
他可以通过Template摸板 一个HellouserEL的表达式获取到里面的user,这个user呢是我们的数据后台Date给他的,然后经过摸板引擎渲染出去给到了output一个正常的页面,在这个页面之前都是通过摸板引擎来渲染的,可能有一些遍历或{user}EL的表达式获取到里面的user,这个user呢是我们的数据后台Date给他的,然后经过摸板引擎渲染出去给到了output一个正常的页面,在这个页面之前都是通过摸板引擎来渲染的,可能有一些遍历或userEL的表达式获取到里面的user,这个user呢是我们的数据后台Date给他的,然后经过摸板引擎渲染出去给到了output一个正常的页面,在这个页面之前都是通过摸板引擎来渲染的,可能有一些遍历或来取值的,在springboot认为这个比较老了所以推荐使用thymeleaf模板引擎,我们其实大家听到很多,其实jsp就是一个模板引擎,还有用的比较多的freemarker,包括SpringBoot给我们推荐的Thymeleaf,模板引擎有非常多,但再多的模板引擎他们的思想都是一样的。
该怎么使用thymeleaf摸板引擎呢我们还是要导入他的依赖配置
org.thymeleaf thymeleaf-spring5 org.thymeleaf.extras thymeleaf-extras-java8time 导入依赖之后我们要在项目里面的ExternalLibraries文件下检查导入的版本是否是Maven:org.thymeleaf: thymeleaf:3.0.12.RELEASE以上的版本否则会报错。 Thymeleaf摸板引擎是写在项目下面的resource下面的templates里面 ![在这里插入图片描述](https://img-blog.csdnimg.cn/20210619154003493.png)
Thymeleaf分析
前面呢,我们已经引入了Thymeleaf,那这个要怎么使用呢?
我们首先得按照SpringBoot的自动配置原理看一下我们这个Thymeleaf的自动配置规则,在按照那个规则,我们进行使用。
我们去找一下Thymeleaf的自动配置类:在项目中连按两次shift键搜索ThymeleafProperties
@ConfigurationProperties(
prefix = “spring.thymeleaf”
)
public class ThymeleafProperties {
private static final Charset DEFAULT_ENCODING;
public static final String DEFAULT_PREFIX = “classpath:/templates/”;//前缀
public static final String DEFAULT_SUFFIX = “.html”;//后缀必须是HTML结尾
private boolean checkTemplate = true;
private boolean checkTemplateLocation = true;
private String prefix = “classpath:/templates/”;
private String suffix = “.html”;
private String mode = “HTML”;
private Charset encoding;
}
我们可以在其中看到默认的前缀和后缀!
我们只需要把我们的html页面放在类路径下的templates下,thymeleaf就可以帮我们自动渲染了。
使用thymeleaf什么都不需要配置,只需要将他放在指定的文件夹下即可!
- 编写一个TestController
@Controller
public class TestController {
@RequestMapping("/test")
public String test1(){
//classpath:/templates/test.html
return “test”;} } - 编写一个测试页面 test.html 放在 templates 目录下 Test页面
启动项目在浏览器输入http://localhost:8080/test 得出结果。 ![在这里插入图片描述](https://img-blog.csdnimg.cn/20210619153942949.png)
Thymeleaf语法,在同一个页面与控制器来简单的写几个来示范。
官网https://www.thymeleaf.org/doc/tutorials/3.0/usingthymeleaf.html
使用thymeleaf第一步需要在html文件中导入命名空间的约束xmlns:th=http://www.thymeleaf.org
控制器代码
@Controller
public class indexController {
@RequestMapping("/test")
public String test(Model model){
//存入数据 //存入数据 把集合里面的数据存放到users里面 Arrays.asList一个数组转换为集合 进行编率
model.addAttribute(“msg”,“
holle,springboot”); model.addAttribute(“users”, Arrays.asList(“你好小鸿”,“你好小玲”));
// return:classpath:/templates/test.html
return “test”;
}
}
页面代码
Test页面
[[ ${user} ]]
在浏览器上面输入网址http://localhost:8080/test他就会出数据如下图所示。