简单介绍:
在进行了(16)以后,前面的页面是html页面,我们以前开发需要把他们转成jsp页面,jsp页面的好处就是到我们查出一些数据,我们可以用foreach进行遍历,用判断等等···jsp有强大的功能,包括写java,但是我们现在的情况是,springboot首先是以jar包的方式,而不是web项目。
而且还是嵌入式的tomcat嵌入,所以现在是不支持jsp的。
解决办法: 如果我们用从静态页面开发的方式,会开发很困难。
优化解决办法:springboot推荐我们使用模版引擎
模版引擎的种类有:JSP、Velocity、Freemarker、Thymeleaf
但是所有的模版引擎的思想是一样的。
模版引擎的作用:首先写一个页面模版,有些值是动态的,那么这些值哪里来呢,我们首先组装一些数据Data,然后把这个模板Template和数据Data交给模版引擎(TemplateEngine),按照数据把表达式解析,填充到指定的位置,然后把数据生成一个我们想要的内容,写出去output。
注意:只是不同的模版引擎语法不同。
SpringBoot推荐的Thymeleaf: 语法更简单,功能更强大;
1、引入thymeleaf;
找依赖
官方文档
dependencies中:
<!-- 引入thymeleaf-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
2、Thymeleaf使用
我们查看使用的文档
@ConfigurationProperties(prefix = "spring.thymeleaf")
public class ThymeleafProperties {
private static final Charset DEFAULT_ENCODING = Charset.forName("UTF-8");
private static final MimeType DEFAULT_CONTENT_TYPE = MimeType.valueOf("text/html");
public static final String DEFAULT_PREFIX = "classpath:/templates/";
public static final String DEFAULT_SUFFIX = ".html";
//
在Controller下的包的helloController类中写入如下内容:
@RequestMapping("/success")
public String success(){
return "success";
}
注意:前面别加ResponseBody
接下来:我们来写一个请求,进行测试
我们在resources下的templates下创建一个success.html
写入如下内容:
<!DOCTYPE html>