Lombok是一个可以通过注解的形式可以帮助消除一些必须但是显得很臃肿的Java代码的工具,通过使用对应的注解,可以在进行编译源码的时候生成对应的方法,比如类属性的get/set/toString()/类的构造方法等.
下面记录一下在Mac Eclipse是如何安装Lombok
1、下载相应的Jar包lombok.jar,下载地址:https://projectlombok.org/download
2、将Lombok集成到Eclipse
(1)Lombok复制到Eclipse.app/Contents/Eclipse目录下;
(2)将如下内容添加到eclipse.ini尾部
-javaagent:../Eclipse/lombok.jar -vmargs -javaagent:lombok.jar
3、重启Eclipse即可。
下面记录一下常用的注解
1、在Maven项目中引入Lombok的Jar
<!-- https://mvnrepository.com/artifact/org.projectlombok/lombok --> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.16.20</version> <scope>provided</scope> </dependency>
2、使用注解
@Data public class User { private int id; private String userName; private Date birthday; }
@Setter 和 @Getter
注解在属性上(当然也可以使用在类上面)为属性提供 setting 方法,默认生成的方法是public的,如果要修改可以设置AccessLever。如下
public class User { @Getter(AccessLevel.PRIVATE) @Setter private int id; @Getter @Setter private String userName; @Getter @Setter private Date birthday; }
@ToString
注解在类上,生成toString()方法,默认情况下,它会按顺序(以逗号分隔)打印你的类名称以及每个字段。可以这样设置不包含哪些字段@ToString(exclude="id"),如果有多个可是是@ToString(exclude={"id","name"}),如果有继承父类的化,可以让其调用父类的toString(),如@ToString(calllSuper = true)
@ToString(exclude = "id") public class User { @Getter(AccessLevel.PRIVATE) @Setter private int id; @Getter @Setter private String userName; @Getter @Setter private Date birthday; }
@NoArgsConstructor, @RequiredArgsConstructor, @AllArgsConstructor
@RequiredArgsConstructor(staticName = "of")会生成一个of()的静态方法,并把构造方法设置为私有的