一、SpringBoot 整合 Lombok

(一)添加依赖

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

(二)安装插件

  由于 Lombok 采取的注解形式的,在编译后,自动生成相应的方法,为了不让 ide 疯了,需要下载插件了支持它。 以 idea 为例:查找插件 lombok plugin 安装即可。

(三)注解介绍

1、案例
@Data注解

@Data
public class User implements Serializable {
    private BigInteger id;
    private String name;
    private Integer age;
}

  @Data注解就相当于@ToString、@Getter、@Setter、@EqualsAndHashCode、@NoArgsConstructor 几个注解的组合。

2、@AllArgsConstructor

  会生成一个包含所有变量,同时如果变量使用了@NotNull 注解, 会进行是否为空的校验, 全部参数的构造函数的自动生成,该注解的作用域也是只有在实体类上,参数的顺序与属性定义的顺序一致。

3、@NoArgsConstructor

无参构造函数

4、@RequiredArgsConstructor

会生成一个包含常量(final),和标识了@NotNull的变量 的构造方法。

(四)如何使用 @AllArgsConstructor、@NoArgsConstructor、@RequiredArgsConstructor

它们都有三个参数可以设置

1、String staticName() default “”;
  如果设置了它,将原来的构造方法的访问修饰符将会变成 私有的,而外添加一个静态构造方法,参数相同,名字是设置的字符串的名字,访问修饰符为公有的。

2、RequiredArgsConstructor.AnyAnnotation[] onConstructor() default {};
  在类上添加注解。使用方法@RequiredArgsConstructor(onConstructor=@__({@AnnotationsGoHere}))}。
  例如我们在 Spring 项目中需要注入多个值,写很多个 @Autowired 很麻烦,就可以使用这种方式:

@Repository
@RequiredArgsConstructor(onConstructor = @__(@Autowired))
public class MongodbRepository {
    private final MongoTemplate mongoTemplate;
    ...
    }

3、AccessLevel access() default lombok.AccessLevel.PUBLIC;
构造函数访问修饰符;

猜你喜欢

转载自blog.csdn.net/panchang199266/article/details/84992168