对于lombok依赖的理解(转载)
在我们写代码的时候一般会使用setter和getter方法对属性进行赋值和取值,如果属性比较多的话,那么从代码量来说是一个复杂的工程,尽管sts或ecplise提供了自动生成的的方法,但是从效果上来看并不美观,如一下代码
1 package com.cy.pj.pojo;
2
3 import java.util.Date;
4
5 import lombok.AllArgsConstructor;
6 import lombok.Data;
7 import lombok.NoArgsConstructor;
8
9 //@Data
10 //@NoArgsConstructor
11 //@AllArgsConstructor
12 public class SysLog {
13
14 private Integer id;
15 private String username;
16 private String operation;
17 private String method;
18 private String params;
19 private Date time;
20 private String ip;
21 private Date createdTime;
22 public Integer getId() {
23 return id;
24 }
25 public void setId(Integer id) {
26 this.id = id;
27 }
28 public String getUsername() {
29 return username;
30 }
31 public void setUsername(String username) {
32 this.username = username;
33 }
34 public String getOperation() {
35 return operation;
36 }
37 public void setOperation(String operation) {
38 this.operation = operation;
39 }
40 public String getMethod() {
41 return method;
42 }
43 public void setMethod(String method) {
44 this.method = method;
45 }
46 public String getParams() {
47 return params;
48 }
49 public void setParams(String params) {
50 this.params = params;
51 }
52 public Date getTime() {
53 return time;
54 }
55 public void setTime(Date time) {
56 this.time = time;
57 }
58 public String getIp() {
59 return ip;
60 }
61 public void setIp(String ip) {
62 this.ip = ip;
63 }
64 public Date getCreatedTime() {
65 return createdTime;
66 }
67 public void setCreatedTime(Date createdTime) {
68 this.createdTime = createdTime;
69 }
70
71
72 }
现在来让我们看看使用lombok依赖后,代码的量减少了很多
1 package com.cy.pj.pojo;
2
3 import java.util.Date;
4
5 import lombok.AllArgsConstructor;
6 import lombok.Data;
7 import lombok.NoArgsConstructor;
8
9 @Data
10 @NoArgsConstructor
11 @AllArgsConstructor
12 public class SysLog {
13
14 private Integer id;
15 private String username;
16 private String operation;
17 private String method;
18 private String params;
19 private Date time;
20 private String ip;
21 private Date createdTime;
22
23
24 }
这两段代码实现的功能是相同的,但是代码量却减少了许多。
现在介绍lombok当中的一些注解的意思:
@Data:注解在属性上为属性提供getting和setting方法,处了这些以外还包括equals,canEqual,hashCode,toString方法
@Setter:注解在属性上为属性提供setting方法,注解在类上表示当前类中所有属性都生成setter方法
@Getter:注解在属性上为属性提供getting方法,注解在类上表示当前类中所有属性都生成getter方法
@Log4j:注解在类上为类提供一个属性名为log的log4j日志对象
@NoArgsConstructor:注解在类上为类提供一个无参构造方法
@AllArgsConstructor:注解在类上为类提供一个全参的构造方法
原文地址:https://www.cnblogs.com/zhou2420032204/p/13252627.html


浙公网安备 33010602011771号