Spring Boot Thymeleaf 热部署 入门第三篇

接上篇,一个spring boot框架搭建好以后,我们可以开始写一些东西了,这时候你是否会想到创建一个jsp文件呢?然后突然发现原来你使用jsp的写法不管用了,这是因为spring不建议使用jsp来开发web,推荐我们使用Thymeleaf来作为前台模板引擎来开发web。
Thymeleaf是一个Java模板引擎开发库,可以处理和生成HTML、XML、JavaScript、CSS和文本,在Web和非Web环境下都可以正常工作。
Thymeleaf可以跟Spring boot很好的集成。
既然是这样,我们就来配置一下Thymeleaf吧。
很简单,在pom.xml里面添加Thymeleaf的jar包引用。

<dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>

在这里需要注意和下面这个jar包是否冲突的问题。

<dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
</dependency>

因为有的thymeleaf包里已经自带了web,

image.png

如果你发现你的这个里面有web包,就把外面那个web删掉,这里没有的话就不用删。
resources目录下的templates目录是放置前台文件的,
image.png

在这里新建一个html文件,
然后在controller里新建方法,controller这里要注意一下,注解要用@Controller,
而不是@RestController,因为@RestController返回的是json数据,而不是前台页面。
image.png

然后启动项目,在浏览器里输入http://localhost:8080/测试一下
image.png

模板加载成功。这时候就想到了一个问题,当我修改了模板以后,怎么立即看到修改后的效果呢?不要慌,这就是下面我要说的,把热部署的功能集成进来。
在pom.xml文件里引入devtools

<!-- 热部署组件 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
            <optional>true</optional>
            <scope>true</scope>
        </dependency>

然后修改两处配置。首先是在设置里
Settings-Compiler-Make Project automatically 勾选上

image.png

然后是按快捷键(ctrl + shift + alt + /),选择第一个Registry进入
image.png

进去以后,勾选上
image.png

重启项目,访问http://localhost:8080/
image.png

界面是这样的,我们来把html文件上的字修改一下

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<h1>Thymeleaf</h1>
<h2>hello world</h2>
</body>
</html>

增加一行文字,然后返回浏览器,刷新页面


image.png

效果出来了,热部署成功!

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容