eclipse lombok插件安装_便捷开发,解放双手,lombok插件
lombok是一款Java實(shí)用工具,可用來(lái)幫助開(kāi)發(fā)人員消除Java的冗長(zhǎng),尤其是對(duì)于簡(jiǎn)單的Java對(duì)象(POJO)。
在實(shí)際開(kāi)發(fā)中,是不是發(fā)現(xiàn)經(jīng)常需要變更model類、vo類、dto等一些實(shí)體類,隨便編碼工具Eclipse或者idea等都可以一鍵重新生成getter或setter方法,但是做起來(lái)依然很繁瑣。
有沒(méi)有更好更優(yōu)雅的解決方法呢,lombok就是答案。lombok采用注解的方式,消除代碼中的構(gòu)造方法,getter/setter等代碼,使我們寫的類更加簡(jiǎn)潔,修改起來(lái)更加方便快捷。
當(dāng)然,這帶來(lái)的副作用就是不易閱讀,不過(guò),對(duì)于本來(lái)就簡(jiǎn)單的getter/setter之類,我覺(jué)得并不是很大的影響。
一、lombok安裝
工欲善其事,必先利其器,要使用lombok,我們先要給我們的編輯器安裝lombok插件。這里主要介紹下eclipse與IDEA集成lombok。
1.eclipse安裝lombok
首先到官網(wǎng)下載插件,地址:http://projectlombok.org/
下載按成后,可以看到lombok本身就是一個(gè)java的jar程序。所以可以直接選擇在lombok的位置執(zhí)行java -jar lombok.jar,或者直接雙擊lombok.jar,然后點(diǎn)擊install/update即可安裝。安裝成功后eclipse目錄下的eclipse.ini文件中將會(huì)有l(wèi)ombok.jar的路徑。
既然jar的功能是生成路徑,那其實(shí)我們也可以選擇手動(dòng)安裝,直接將lombok.jar包拷貝到eclipse的安裝目錄下,并且在eclipse.ini添加lombok的路徑。
1.IDEA安裝lombok
在IDEA中選擇File->Setting->Plugins搜索Lombok Plugin,點(diǎn)擊install,安裝完成后重啟IDEA即可。
二、lombok使用
在安裝插件后,就開(kāi)始來(lái)體驗(yàn)lombok吧,要想使用lombok,只需要在pom文件(maven項(xiàng)目)中引入依賴即可,然后就可以愉快的玩耍了。
下面我們就來(lái)看看lombok常用的一些注解。
隨便常見(jiàn)一個(gè)工程,引入lombok依賴。
1.@Getter/@Setter
這個(gè)從名字上大概就已經(jīng)可以看出大概個(gè)用法,就是提供getter/setter方法,從而避免了修改字段需要從新生成getter/setter方法。這個(gè)注解可以使用在字段上,提供單個(gè)字段的getter/setter,也可以直接寫在類上,提供整個(gè)類所有非靜態(tài)成員變量的getter/setter。
2.@ToString/@EqualsAndHashCode
同樣故名思議,這也是lombok的特點(diǎn),看名字就知道用法,這兩個(gè)注解就是生成toString,equals和hashcode方法。同時(shí)后者還會(huì)生成一個(gè)canEqual方法,用于判斷某個(gè)對(duì)象是否是當(dāng)前類的實(shí)例,生成方法時(shí)只會(huì)使用類中的非靜態(tài)和非transient成員變量 。
那如果不想使用默認(rèn)的所有字段呢,這兩個(gè)注解也提供了of來(lái)指定包含,或者使用exclude屬性來(lái)指定排除。
3.@NoArgsConstructor/@AllArgsConstructor/@RequiredArgsConstructor
這三個(gè)注解就是提供構(gòu)造方法,NoArgs表示無(wú)參數(shù),AllArgs表示全部參數(shù),而Required表示可以選的。
@NoArgsConstructor和@AllArgsConstructor直接使用即可,但@RequiredArgsConstructor怎么使用呢,它怎么知道我要使用哪些參數(shù)的,所以這個(gè)注解必須和另一個(gè)注解配合使用,那就是@NonNull,它用來(lái)指定構(gòu)造參數(shù)需要使用那些個(gè)參數(shù)。
@RequiredArgsConstructor在使用會(huì)有一點(diǎn)小bug,可以看到此時(shí)我們是沒(méi)有無(wú)參的構(gòu)造方法,且代碼提示也不包含無(wú)參數(shù)的構(gòu)造方法,但是并不影響調(diào)用,也是可以正常運(yùn)行使用的。
4.@Data/@Value
@Data注解綜合前面的@Getter/@Setter,@ToString/@EqualsAndHashCode,@NoArgsConstructor和@RequiredArgsConstructor ,所以一般的po或者vo類,這一個(gè)注解就ok了。
@Value注解和@Data類似,區(qū)別在于它會(huì)把所有成員變量默認(rèn)定義為private final修飾,并且不會(huì)生成set方法。
5.@NonNull
@NonNull除了與@RequiredArgsConstructor結(jié)合使用,還可以用來(lái)做空校驗(yàn),當(dāng)使用@NonNull注解的參數(shù)為空時(shí),則會(huì)拋出異常。
6.@Cleanup
在很多設(shè)計(jì)資源讀取時(shí),我們?cè)谫Y源文件使用完之后都需要手動(dòng)去關(guān)閉資源,一般做法是使用try……finally,而@Cleanup就相當(dāng)于這種寫法,會(huì)在資源使用后關(guān)閉資源。
7.@SneakyThrows
編寫代碼時(shí),我們常常要處理各種異常,@SneakyThrows則可以自動(dòng)生成try……catch代碼塊,然后對(duì)于6的代碼,我們就可以改寫如下,是不是瞬間清爽了很多,但是@SneakyThrows是包裹整個(gè)方法,如果只想包裹方法里面部分代碼語(yǔ)句,那只能自己動(dòng)手了。
8.@Log/@Slf4j/@Log4j等
這類注解就是生成默認(rèn)生成一個(gè)log日志對(duì)象,供程序中調(diào)用,具體使用什么日志,得取決于項(xiàng)目采用的日志系統(tǒng)。
這就是關(guān)于lombok的一部分注解,更多注解和功能大家可以自行摸索或者翻閱資料。最后,友情提示,用lombok一時(shí)爽,一直用lombok一直爽。
總結(jié)
以上是生活随笔為你收集整理的eclipse lombok插件安装_便捷开发,解放双手,lombok插件的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: linux安装python3.6_Lin
- 下一篇: 除零中断是什么意思?_百万并发「零拷贝」