甜野猫|是时候秀一波了,甩掉get和set,Lombok让代码更简洁

前言前几天有个新来的同事(实习生)惊讶的对我说:我们的代码里好多错误 , 我的程序本地都启动不了 。
我一脸懵逼的质问他:目前线上的代码 , 怎么会有问题吗?
他不服气的说:你来看嘛 , 就是有问题 , Dao实体get()和set()方法都没有 。
【甜野猫|是时候秀一波了,甩掉get和set,Lombok让代码更简洁】此处省略10000字 , 让我流一会儿技术的眼泪 。
甜野猫|是时候秀一波了,甩掉get和set,Lombok让代码更简洁Lombok通常我们代码里的实体Dao或者自定义Bean都会有get()和set()方法 , set是设置的意思 , 而get是获取的意思 , 顾名思义 , 这两个方法是对数据进行设置和获取用的 。 一般来说set和get方法都是对私有域变量进行操作的 , 所以大多数都是使用在包含特定属性的类实体中 。
现实中有说许多看到密密麻麻的get()和set()就会头疼 , 但现在有了Lombok , 它提供了简单的注解的形式来帮助我们简化消除一些必须有但显得很臃肿的 java 代码 。 通过使用对应的注解 , 可以在编译源码的时候生成对应的方法 , 所以不会影响任何运行效率 。
但也许有的人由于习惯问题 , 看不到get()和set()也会缺乏一些安全感 。
甜野猫|是时候秀一波了,甩掉get和set,Lombok让代码更简洁传统set和get方法既然是实体 , 里面少不了要定义变量 , 而实体变量的值的设置和获取 , 由set()和get()方法实现 。 标准set和get方法定义如下:
public class MedalinfoVo {private Long id;private String medalname;private String icon;private Integer isLight;private Integer medallevel;public Long getId() {return id; } public void setId(Long id) {this.id = id; } public String getMedalname() {return medalname; } public void setMedalname(String medalname) {this.medalname = medalname; } public String getIcon() {return icon; } public void setIcon(String icon) {this.icon = icon; } public Integer getIsLight() {return isLight; } public void setIsLight(Integer isLight) {this.isLight = isLight; } public Integer getMedallevel() {return medallevel; } public void setMedallevel(Integer medallevel) {this.medallevel = medallevel; }}方法setXxx()参数为该变量的值 , 即我们在给该变量定义值的时候设置的 。
方法getXxx()无参 , 直接返回该变量的在主内存的值 。
可以看到满篇的set和get方法 , 如果一个实体有20个变量或以上 , 那么整个class看起来就会非常长而且臃肿 , 既没有技术含量 , 又影响着代码的美观 , 要增加或修改的时候变得麻烦和易错 。
重要的是set和get方法 , 也存在线程同步问题 。
甜野猫|是时候秀一波了,甩掉get和set,Lombok让代码更简洁Lombok的set和get方法Lombok是一种自动接通你的编辑器和构建工具的一个Java库 。 lombok其实就是帮助我们编写getter或者equals方法的一个“工具” 。 官方网站:Lombok官网
lombok的使用
首先引入maven依赖:
甜野猫|是时候秀一波了,甩掉get和set,Lombok让代码更简洁使用了lombok的实体
@Getter@Setterpublic class MedalinfoVo {private Long id;private String medalname;private String icon;private Integer isLight;private Integer medallevel;}


推荐阅读