一个标准的 Java对象中通常具备具有几个属性。每个属性具有一个get
和 set
方法。通常还会有 toString()
方法。对于每一个类中都会写大量的这些方法,尽管可以使用快捷键生成, 但是当再一个类里面添加或者修改属性的时候有需要修改或者增加get
和 set
方法,重写 toString()
方法。这样无疑显得很麻烦,但是使用LomBok插件就可以代替这些繁琐的工作,你学还是不学?
一、使用步骤
1.添加插件的依赖
<!-- https://mvnrepository.com/artifact/org.projectlombok/lombok --> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.18.12</version> <scope>provided</scope> </dependency>
2.IDEA装插件
3.使用
import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; @Data @NoArgsConstructor @AllArgsConstructor public class BookInfo { private long book_id; private String name; private String author; private String publish; private String isbn; private String introduction; private String language; private double price; private String pubdate; // Mysql中日期使用String 更方便 private long class_id; private long pressmark; private long state; }
二、LomBok中的注解说明
@Getter/@Setter
使用位置:类、字段
该注解会为标注的类、字段生成 get/set
方法,并且生成的方法名为驼峰命名法。
可以通过指定访问级别 AccessLevel
来控制生成的 Getter
和 Setter
的访问权限。合法访问级别为PUBLIC
,PROTECTED
,PACKAGE
和PRIVATE
。也可以使用None
来禁用getter
和 setter
的生成。
对于以 is 开头且后面紧跟着大写字母的布尔字段,不会添加任何前缀来生成getter名称。@Getter 也可用于枚举。@Setter 不能用于枚举。
@ToString
使用位置:类
可以生成一个字符串:它会按顺序打印你的类名称以及每个字段,并以逗号分隔,默认情况会打印所有的非静态字段
@EqualsAndHashCode
使用位置:类
可以使用字段为该类生成 Equals
和 HashCode
方法。
@XxxConstructor
使用位置:类
可以使用字段为该类生成各种各样的 Constructor
。
@NoArgsConstructor
为类生成无参的构造函数
@AllArgsConstructor
为类中的每个字段生成对应参数的构造函数。标有 @NonNull
的字段会导致对这些参数进行空检查
@Data
使用位置:类
大融合!将 @ToString
, @EqualsAndHashCode
, 所有字段的 Getter
, 所有非 final 字段的 @Setter
!它通常用来生成简单的 POJO
和 Bean
@Value
使用位置:类
是@Data
的不可变形式,相当于为属性添加final声明,只提供getter方法,而不提供setter方法