03-SpringBoot常用工具

nobility 发布于 2022-05-29 1806 次阅读


SpringBoot常用工具

SpringInitailizr

通过转到官方SpringBoot项目初始化器,并从依赖项选择Web启动器,直接生成SpringBoot项目,当然IDEA也内置了一个SpringBoot的初始化器(需要联网)

DevTools

dev-tools是用于开启服务自动重启功能的,每次修改完编译后的class文件,服务器自动重启,首先将devtools依赖加入到pom.xml中,版本由SpringBoot控制即可,要注意依赖范围runtime

<dependency>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-devtools</artifactId>
  <scope>runtime</scope>
  <optional>true</optional>  <!--保证optional为true才能开启-->
</dependency>

每次重启还是要点击编译按钮,有点麻烦,可选择性的开启IDEA的自动编译功能,具体步骤如下

  1. 依次点击File > Settings > Build, Execution, Deployment > Compiler,勾选Build project automatically选项
  2. 在使用Ctrl + Alt + Shift + /快捷键打开Maintenance界面
  3. 选择1. Registry...,进入后勾选compiler.automake.allow.when.app.running选项
  4. 再重启IDEA即可开启自动编译功能

Lombok

Lombok是用于使用注解方式操作为类生成一些常用的模板化方法,比如getter、setter等,首先将lombok依赖加入到pom.xml中,版本由SpringBoot控制即可

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

虽然Lombok已经起到作用,但是IDEA并不认得该工具生成的方法,会显示上报错,运行并没有问题,可为IDEA安装lombok的插件,就不会显示上报错了,依次点击File > Settings > Plugins,进入插件页面后点击Marketplace显示插件市场,搜索lombok插件安装即可;常用注解如下:

注解 描述
@Slf4j 自动注入log变量,用于日志输出
@Setter 自动为类生成setter方法,忽略final修饰的属性
@Getter 自动为类生成getter方法
@EqualsAndHashCode 自动为类生成equals()方法和hashCode()方法
@ToString 自动为类生成toString()方法
@Data 自动为类生成setter、getter、equals、hashCode和toString方法
@NoArgsConstructor 自动为类生成无参构造方法
@AllArgsConstructor 自动为类生成全惨构造方法
@NonNull 作用与属性上,自动校验该属性是否为空,若为空会抛出异常
@RequiredArgsConstructor 自动为类生成,不包含@NonNull注解属性的构造方法
@Build 自动为类生成构建方法,无参构造会变为私有方法,可使用@NoArgsConstructor注解添加共有的无参构造,也可以手动编写无参构造

Builder模式,构建方法实例化,具体如下:

@Builder
public class Student {
  private String name;

  public static void main(String[] args) {
    Student student = Student.builder()  //使用builder()静态方法链式调用
        .name("zhangs")  //设置属性,多个属性链式调用即可
        .build();  //最后调用build()方法表示构建完成
  }
}
此作者没有提供个人介绍
最后更新于 2022-05-29