博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Lombok学习笔记— 消除冗余java代码
阅读量:6591 次
发布时间:2019-06-24

本文共 1651 字,大约阅读时间需要 5 分钟。

hot3.png

  1. lombok官网:
  2. lombok开源中国连接:
  3. lombok安装:
    • 使用lombok之前是需要进行安装的,否则IDE无法解析lombok注释。安装lombok首先当然是需要从官网下载lombok最新版本的JAR包,目前最新版本是1.16.10;
    • 自动安装: 官网视频讲解可以直接双击进行安装,不推荐。想尝试的可以自行参考官网视频;
    • 手动安装:
      • 将lombok.jar复制到eclipse.ini所在的文件夹目录下;
      • 打开eclipse.ini,在最后插入下面两行并保存: -Xbootclasspath/a:lombok.jar -javaagent:lombok.jar
      • 重启eclipse;
  4. ** lombok注解:**
    • lombok提供的注释不是很多,可以参考官方文档。
    • lombok在线文档:
  5. 常用的lombok注解:
    • @Data:注解在类上,提供所有属性的get和set方法,此外还提供了equals、canEqual、codeCode\toString方法;
    • @Setter:注解在属性上,为属性提供set方法;
    • @Getter:注解在属性上,为属性提供get方法;
    • @Log4j:注解在类上,为类提供一个属性名为log的Log4j日志对象;
    • @NoArgsConstructor:注解在类上,为类提供一个无参的构造方法;
    • @AllArgsConstructor:注解在类上,为类提供一个全参的构造方法。
  6. 没有例子的讲解都是耍流氓,所以下面请看简单示例:
    1. 不使用lombok:
public class Person{    private String id;    private String name;    private String age;    private Logger log = Logger.getLogger(Person.class);        public Person(){            }    public Person(String id, String  name, String age){        this.id = id;        this.name = name;        this.age = age;    }    public String getId(){        return id;    }    public String getName(){        return name;    }    public String getAge(){        return age;    }    public String setId(String id){        this.id = id;    }    public String setName(String name){        this.name= name;    }    public String setAge(String age){        this.age= age;    }}
2. 使用lombok:
@Data@Log4j@NoArgsConstructor@AllArgsConstructorpublic class Person{    private String id;    private String name;    private String age;}
- 上面这两段Java代码,从作用上来看,他们的效果是一样的,但是很显然第二段代码比第一段代码要简洁得多,特别实在属性比较多的情况下尤为明显,同时也可以避免修改字段名称时忘记修改方法名所带来的错误;- 最后需要注意的就是在使用lombok注解的时候需要记得导入lombok.jar到你的工程。

转载于:https://my.oschina.net/799835984/blog/790979

你可能感兴趣的文章
16年做了8个岗位,我的阿里故事刚刚开始
查看>>
NestJs简明教程
查看>>
《Redis 设计与实现》读书笔记-Redis 对象
查看>>
Python线程专题9:线程终止与挂起、实用工具函数
查看>>
「译」Liftoff:V8 引擎中全新的 WebAssembly baseline 编译器
查看>>
从 0 到 1 实现 React 系列 —— 4.优化setState和ref的实现
查看>>
html+css+javascript学习记录1
查看>>
【DL-CV】损失函数,SVM损失与交叉熵损失
查看>>
我要学好分布式-RMI通信框架
查看>>
央视和阿里云爆改一间房,帮视障人群回归正常世界
查看>>
leetcode-29. Divide Two Integers
查看>>
webpack源码分析(一)-流程分析
查看>>
集合(一) - ArrayList
查看>>
Java高并发及测试代码
查看>>
架构模式mv*,flux
查看>>
180706-BigDecimal除法的精度问题
查看>>
你真的搞懂了负数取模吗?
查看>>
新增16条设计规约!阿里巴巴Java开发手册(详尽版)开放下载!
查看>>
HTTP协议入门
查看>>
Python学习之路17-Django入门
查看>>