lombok 简化java代码注解

lombok 注解:
    lombok 提供的注解不多,可以参考官方视频的讲解和官方文档。

    Lombok 注解在线帮助文档:http://projectlombok.org/features/index.

    lombok注解文档 
    lombok官网下载  

@Data :注解在类上;提供类所有属性的 getting 和 setting 方法,此外还提供了equals、canEqual、hashCode、toString 方法

@Setter:注解在属性上;为属性提供 setting 方法

@Getter:注解在属性上;为属性提供 getting 方法

@Log4j :注解在类上;为类提供一个 属性名为log 的 log4j 日志对象

@NoArgsConstructor:注解在类上;为类提供一个无参的构造方法

@AllArgsConstructor:注解在类上;为类提供一个全参的构造方法

@NonNull:注解在参数上 如果该参数为null 会throw new NullPointerException(参数名);

@Cleanup:注释在引用变量前:自动回收资源 默认调用close方法

  @Cleanup("dispose") org.eclipse.swt.widgets.CoolBar bar = new CoolBar(parent, 0);

  @Cleanup InputStream in = new FileInputStream(args[0]);

  @Cleanup OutputStream out = new FileOutputStream(args[1]);

@Builder:注解在类上;为类提供一个内部的Builder

下面是简单示例
    1.不使用 lombok 的方案
 1
 2public class Person {
 3
 4    private String id;
 5    private String name;
 6    private String identity;
 7    private Logger log = Logger.getLogger(Person.class);
 8    
 9    public Person() {
10        
11    }
12    
13    public Person(String id, String name, String identity) {
14        this.id              = id;
15        this.name       = name;
16        this.identity  = identity;
17    }
18    
19    public String getId() {
20        return id;
21    }
22    
23    public String getName() {
24        return name;
25    }
26    
27    public String getIdentity() {
28        return identity;
29    }
30    
31    public void setId(String id) {
32        this.id = id;
33    }
34    
35    public void setName(String name) {
36        this.name = name;
37    }
38    
39    public void setIdentity(String identity) {
40        this.identity = identity;
41    }
42}
43

    2.使用 lombok 的方案
 1
 2@Data
 3@Log4j
 4@NoArgsConstructor
 5@AllArgsConstructor
 6public class Person {
 7
 8    private String id;
 9    private String name;
10  private String identity;
11    
12}
13

 

猜你喜欢

转载自blog.csdn.net/thinkingcao/article/details/80678682