标签:level prot integer artifact depend nal 打印 param clu
IDE:
首先在设置的插件栏中安装lombok,然后使用如下的pom依赖:
<dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <optional>true</optional> </dependency>
生成toString()方法,默认情况下,它会按顺序(以逗号分隔)打印你的类名称以及每个字段。
可以这样设置不包含哪些字段@ToString(exclude = "id") / @ToString(exclude = {"id","name"})
如果继承的有父类的话,可以设置callSuper 让其调用父类的toString()方法,例如:@ToString(callSuper = true)
import lombok.ToString;
@ToString(exclude = {"id","name"})
public class User {
private Integer id;
private String name;
private String phone;
}
//生成toString方法如下:
public String toString(){
return "User(phone=" + phone + ")";
}
你可以用@Getter / @Setter注释任何字段,让lombok自动生成默认的getter / setter方法。
默认生成的方法是public的,如果要修改方法修饰符可以设置AccessLevel的值,例如:@Getter(access = AccessLevel.PROTECTED)
import lombok.AccessLevel;
import lombok.Getter;
import lombok.Setter;
public class User {
@Getter(AccessLevel.PROTECTED) @Setter private Integer id;
@Getter @Setter private String name;
@Getter @Setter private String phone;
}
生成hashCode()和equals()方法,
默认情况下,它将使用所有非静态,非transient字段。但可以通过在可选的exclude参数中来排除更多字段。或者,通过在parameter参数中命名它们来准确指定希望使用哪些字段。
@RequiredArgsConstructor会生成构造方法(可能带参数也可能不带参数),
如果带参数,这参数只能是以final修饰的未经初始化的字段,或者是以@NonNull注解的未经初始化的字段
@RequiredArgsConstructor(staticName = "of")会生成一个of()的静态方法,并把构造方法设置为私有的
@Data 包含了@ToString,@EqualsAndHashCode,@Getter / @Setter和@RequiredArgsConstructor的功能
以后有更多的使用到的会再做补充
标签:level prot integer artifact depend nal 打印 param clu
原文地址:http://www.cnblogs.com/lilinzhiyu/p/7928665.html