一、springboot 工程下lombok的应用。

背景分析

在实际的java项目中我们创建的所有pojo类几乎都要为属性添加set/get/toString等相关方法,所有的日志记录相关类可能都要创建日志等对象,这些样板代码既没有技术含量,又影响着代码的美观,同时重复的编码过程会在无形中加大我们的工作量。 此时Lombok应运而生。

lombok简介

概述

Lombok是一个第三的Java库,它会自动插入编辑器和构建工具中,Lombok提供了一组有用的注释,用来告诉编译过程中的编译工具,在源代码编译成字节码的过程中,在字节码中添加一些量样板代码。

常用注解分析

  • @Setter 用于为描述的类生成setter方法,不包含final修饰属性。
  • @Getter 用于为描述的类生成getter方法。
  • @ToString 用于为描述的类添加toString方法。
  • @EqualsAndHashCode 用于为描述的类,生成hashCode和equals方法。
  • @NoArgsConstructor 用于为描述的类生成无参的构造方法。
  • @AllArgsConstructor 用于为描述的类生成包含类中所有字段的构造方法。
  • @Data用于为描述的类生成setter/getter、equals、canEqual、hashCode、toString方法,如为final属性,则不会为该属性生成setter方法。
  • @Slf4J 用于为描述的类添加一个日志属性对象。

lombok安装

idea中的安装配置

第一步:打开idea的设置窗口,找到plugins菜单,搜索lombok进行安装,如图所示:

image.png

第二步:启动注解处理,如图所示:

image.png

第三步:重启idea(可选,有的idea版本需要)。

lombok在maven项目中应用

第一步:添加lombok依赖。

<dependency>
   <groupId>org.projectlombok</groupId>
   <artifactId>lombok</artifactId>
   <scope>annotationProcessor</scope>
</dependency>

第二步:在类上应用lombok注解。

@Data 
@NoArgsConstructor 
@AllArgsConstructor 
public class Goods {
    private Long id;
    private String name;
    private String remark;
    private Date createdTime;
}

第三步:编写单元测试类检测Lombok注解应用

@Slf4j
@SpringBootTest
public class GoodsTests{
     @Test
     void testGoods(){
        Goods g=new Goods();
        g.setId(100L);
        g.setName("Lombok");
        log.info("id的值为{}",g.getId());
        log.info("name的值为{}",g.getName());
     }
}

二、springboot工程中的热部署实现。

热部署简介

Spring Boot 开发者为Spring Boot项目中提供了一个热部署(spring-boot-devtools)模块,支持项目的热部署(修改了某些资源以后无需重启服务),以提高开发效率.其底层其实是借助了两个类加载器做了具体实现,一个类加载器加载不变class,一个类加载器加载可能变化类,以提供类的热部署性能.

热部署环境初始化

本次热部署的演示在IDEA开发中进行实现,其它工具可以自己通过搜索引擎进行学习。

IDEA 启动自动编译,如图所示:

image.png

IDEA工具中启动注册窗口(按ctrl+shift+alt+/),如图所示:
image.png

选择编译构建配置,如图所示:
image.png

热部署在项目中应用

在需要热部署的项目或module中添加如下依赖:

<dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-devtools</artifactId>
   <scope>runtime</scope>
</dependency>

依赖下载以后,可重启reload项目,然后当我们修改了src/main/java目录下的java文件或修改了src/main/resources目录下的配置文件时,默认都会重启你的web服务器,但是修改了测试类或html文件不会自动重启和部署。

三、SpringBoot 工程的健康监控实现

健康监控简述

Spring Boot 中actuator模块提供了健康检查,审计、指标收集,HTTP跟踪等功能,可以帮助我们更好的管理和跟踪springboot项目。

健康监控配置实现

在需要使用健康监控的项目或module中,添加如下依赖:

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

添加完依赖以后,reload项目或module。

健康监控启动分析

启动项目,在浏览器中输入如下地址:(SpringBoot默认打开的监控选项有限)

http://localhost/actuator

其访问结果,如图所示:

image.png

还可以在actuator列出的选中中进行点击,例如访问health

http://localhost/actuator/health

其呈现结果,如图所示(其中up状态表示正常):
image.png

假如希望查看更多actuator选项,可以在spring boot中配置文件

application.properties中添加如下语句:

management.endpoints.web.exposure.include=*

然后,重启服务器,基于访问http://localhost/actuator地址...)


小韩
7 声望7 粉丝

及时更新,及时复习。