SpringBoot 加强功能
SrpingBoot 加强功能
监控信息
我们可以引入一个依赖, 方便开发时查看对请求映射文件,或bean的监控信息
依赖:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
健康检查分析:在浏览器中输入如下地址:
http://localhost/actuator/health
假如希望查看更多actuator选项,可以在spring boot中配置文件
application.properties中添加如下语句:
*号代表所有的监控都可显示
management.endpoints.web.exposure.include=*
yml可以进行如下配置:
management:
endpoints:
web:
exposure:
include: "*" # 一定要加引号
浏览器输入http://ip:port/actuator 即可查看所有的监控链接 (ip和port为你的springboot服务的ip/域名和端口号)
例如在浏览器地址栏可以输入.http://localhost/actuator/beans
查看所有的spring 容器中的bean信息。
说明:当需要以一种更好的结构化方式查看bean相关信息,可以对Google浏览器安装jsonView插件或者使用Postman等工具进行资源请求然后查询bean信息,还可以直接在sts(eclipse)工具的Boot Dashboard中选中项目,查看其属性(show properties).
springboot热部署
导入依赖:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<scope>runtime</scope>
</dependency>
eclipse中写完代码后即可热部署, idea需要ctrl+F9 或者自行在启动配置里面设置
但是修改thymeleaf模版的时候, 需要关闭thymeleaf的缓存才行
spring.thymeleaf.cache=false
但是热部署是非常消耗内存和cpu的, 如果你的配置足够好, 可以使用热部署, 配置不好知道知道就行了
lombok
Lombok是一个第三库,可以基于lombok中提供的API,在程序编译时自动织入一些方法。这样做的话可以简化我们对某些方法的编写,例如,省略pojo类中的set方法,get方法,toString等方法的编写。我们写的java程序可以在编译时,通过lombok自动将这些方法添加到.class文件中,
idea需要安装lombok插件之后, 引入依赖即可使用
eclipse安装步骤如下:
-
引入依赖
<dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> </dependency>
-
找到maven仓库中下载的lombok-xxx.jar依赖所在的位置。
-
启动操作系统命令行客户端,并切换到lombok-xxx.jar文件所在的目录,然后,利用java –jar 指令启动lombok插件
回车执行如上命令,会弹出选择安装对话框,如下图所示:
然后在弹出的框中选择sts启动执行文件(SpringToolSuite4.exe)进行安装,
安装成功以后会出现如下弹出框
装成功以后可在STS工具的根目录看到一个lombok.jar文件,同时会在SpringToolSuite4.ini文件的尾部添加lombok.jar文件所在的具体路径
安装成功以后重启sts工具.(假如安装成功以后再次启动sts,此时无法启动,可能与STS所在目录有关系,可以将安装目录下的lombok.jar文件拷出到特定目录,然后修改SpringToolSuite4.ini文件的最后一行的lombok.jar路径即可,同时在配置文件中也不能有空格)。
lombok使用
-
@Setter 用于为描述的类生成setter方法,不包含final修饰属性。
-
@Getter 用于为描述的类生成getter方法。
-
@ToString 用于为描述的类添加toString方法。
-
@EqualsAndHashCode 用于为描述的类,生成hashCode和equals方法。
-
@NoArgsConstructor 用于为描述的类生成无参的构造方法。
-
@AllArgsConstructor 用于为描述的类生成包含类中所有字段的构造方法。
-
@Data用于为描述的类生成setter/getter、equals、canEqual、hashCode、toString方法,如为final属性,则不会为该属性生成setter方法。
-
@Slf4J 用于为描述的类添加一个日志属性对象
private static final Logger log =LoggerFactory.getLogger(Xxx.class);