SpringBoot2.0整合lombok讓程式碼更簡潔
阿新 • • 發佈:2019-01-29
Lombok使用詳解
前言
在Java中,封裝是一個非常好的機制,最常見的封裝莫過於get,set方法了,無論是Intellij idea 還是Eclipse,都提供了快速生成get,set方法的快捷鍵,使用起來很是方便,其實,我們還有更方便的辦法,就是今天的主角-Lombok
Lombok是什麼?
Lombok是一個通過註解以達到減少程式碼的Java庫,如通過註解的方式減少get,set方法,構造方法等
效果說明:
以前專案中每個實體類都是這樣的:
使用lombok後:
在使用日誌是我時候,通常這樣寫:
再類中使用都要先初始化物件,載入物件:
一百個就寫一百個這樣的:
使用lombok後:
只需要這樣:
加上@Slf4j註解,直接使用 log
常用註解說明:
@Data :註解在類上;提供類所有屬性的 getting 和 setting 方法,此外還提供了equals、canEqual、hashCode、toString 方法
@Setter:註解在屬性上;為屬性提供 setting 方法
@Getter:註解在屬性上;為屬性提供 getting 方法
@Log4j :註解在類上;為類提供一個 屬性名為log 的 log4j 日誌物件
@NoArgsConstructor :註解在類上;為類提供一個無參的構造方法
@AllArgsConstructor:註解在類上;為類提供一個全參的構造方法
@NonNull該註解快速判斷是否為空,如果為空,則丟擲java.lang.NullPointerException
@Synchronized該註解自動新增到同步機制,有趣的是,生成的程式碼並不是直接鎖方法,而是鎖程式碼塊, 作用範圍是方法上
如何安裝Lombok?
實現也很簡單:
只需要兩步驟:
方法一
通過向lib資料夾中新增lombok.jar包即可,
方法二 如果使用的是Maven,則可在專案的pom.xml檔案中新增以下依賴:
<!-- https://mvnrepository.com/artifact/org.projectlombok/lombok -->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.0</version>
<scope>provided</scope>
</dependency>
通過以上兩種方法的確可以使用Lombok的相關API了,但無論是Intelij idea,還是Eclipse預設情況下是不能識別的,我們還要讓idea識別起來。
Intellij Idea方法:
File->settings->Plugins->Browse repositories->Lombok 如圖所示: