一、devtools热部署
1、热部署
- 热部署:热部署就是代码修改时会自动部署并重新启动项目,而不用人工将项目重启,就跟Vue一样
- 热部署原理:
spring-boot-devtools使用了两个类加载器ClassLoader,一个ClassLoader加载不会发生更改的类(第三方jar包),另一个ClassLoader(restart ClassLoader)加载会更改的类(自定义的类)。
后台启动一个文件监听线程(File Watcher),监测的目录中的文件发生变动时,原来的restart ClassLoader被丢弃,将会重新加载新的restart ClassLoader。
由于加载的类比较少,所以缩短了重启时间。
2、devtools应用
- pom.xml中添加依赖
<!--SpringBoot热部署配置--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-devtools</artifactId><optional>true</optional></dependency><!--添加Thymeleaf模板依赖--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-thymeleaf</artifactId></dependency>
- 在application.yml中配置devtools
spring:
devtools:
restart:
enabled:true #设置开启热部署
additional-paths: src/main/java #重启目录
exclude: WEB-INF/** # 指定目录不更新
freemarker:
cache: false #页面不加载缓存,修改即时生效
如果报红,就点击弹出的那个M标志,即更新Maven配置
- 修改IDEA配置
打开 文件——设置——构建、执行、部署——编译器——勾选自行构建项目
到此就配置好了,可自行测试
二、Postman工具
Postman是一款功能强大的网页调试与发送网页HTTP请求的工具
它能够发送任何类型的HTTP请求,附带任何数量的参数和HTTP headers
1、postman下载和使用
- 下载postman,去官网下载postman官网
- 一路火花带闪电下完,打开postman
- 账号想注册就注册,不想注册就跳过
- 新建一个collection
- 新建一个request
- 修改请求方式和地址,点击send即可成功
2、基于Postman接口调用
- 新建util目录,并新建JsonResult类
package com.example.postman.util;publicclassJsonResult<T>{private T data;private String code;private String msg;/**
* 若没有数据返回,默认状态码为0,提示信息为:操作成功!
*/publicJsonResult(){this.code="0";this.msg="操作成功!";}/**
* 若没有数据返回,可以人为指定状态码和提示信息
* @param code
* @param msg
*/publicJsonResult(String code, String msg){this.code= code;this.msg= msg;}/**
* 有数据返回时,状态码为0,默认提示信息为:操作成功!
* @param data
*/publicJsonResult(T data){this.data= data;this.code="0";this.msg="操作成功!";}/**
* 有数据返回,状态码为0,人为指定提示信息
* @param data
* @param msg
*/publicJsonResult(T data, String msg){this.data= data;this.code="0";this.msg= msg;}// 省略get和set方法public TgetData(){return data;}publicvoidsetData(T data){this.data= data;}public StringgetCode(){return code;}publicvoidsetCode(String code){this.code= code;}public StringgetMsg(){return msg;}publicvoidsetMsg(String msg){this.msg= msg;}}
- 新建PostmanController类
package com.example.postman.controller;import com.example.postman.util.JsonResult;import org.springframework.web.bind.annotation.PostMapping;import org.springframework.web.bind.annotation.RestController;@RestControllerpublicclassPostmanController{@PostMapping("login")public JsonResultlogin(String username,String password){
JsonResult result=newJsonResult();
result.setData(username);
result.setCode("0");
result.setMsg("操作成功!");return result;}}
- 使用Postman发送请求