Spring Boot整合Lombok的方法詳解
上篇文章給大家介紹了,喜歡的朋友點(diǎn)擊查看下。
SpringBoot 開發(fā)提速神器 Lombok+MybatisPlus+SwaggerUI
Lombok為啥這么牛逼?SpringBoot和IDEA官方都要支持它
一、Lombok簡(jiǎn)介
Lombok 是一種 Java 實(shí)用工具,可用來(lái)幫助開發(fā)人員消除 Java 的冗長(zhǎng),尤其是對(duì)于簡(jiǎn)單的 Java 對(duì)象(POJO)。它通過(guò)注釋實(shí)現(xiàn)這一目的。通過(guò)在開發(fā)環(huán)境中實(shí)現(xiàn) Lombok,開發(fā)人員可以節(jié)省構(gòu)建諸如 hashCode()
和 equals()
這樣的方法以及以往用來(lái)分類各種 accessor 和 mutator 的大量時(shí)間。
二、整合Lombok
安裝Lombok插件
1.直接從http://plugins.jetbrains.com/下載,然后放到idea安裝文件下面的plugins,然后重啟idea
2.在idea的settings(windows)或者Preferences(mac),下找到plugins菜單,點(diǎn)擊Browse repositories,如圖
在項(xiàng)目pom文件中加入lombok依賴
<!--lombok--> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <optional>true</optional> </dependency>
使用@Data注解測(cè)試
@Data等價(jià)于上面的@Setter
、@Getter
、@RequiredArgsConstructor
、@ToString
、@EqualsAndHashCode
package com.smartadmin.entity.common; import com.fasterxml.jackson.annotation.JsonInclude; import lombok.Data; import java.io.Serializable; /** * Page * * @Author: hanYong * @CreateTime: 2020-11-25 */ @Data public class EsPage implements Serializable { private static final long serialVersionUID = 8398867132297251568L; /** 分頁(yè)起點(diǎn) */ private Integer from; /** 最多返回size條記錄 */ private Integer size; /** 排序字段名 */ private String field; /** 排序方式 */ private String order; public static void main(String[] args) { EsPage esPage = new EsPage(); esPage.setField("123"); System.out.println(esPage.toString()); } }
三、Lombok注解簡(jiǎn)介
@Data 標(biāo)簽,生成getter/setter toString()等方法 @NonNull : 讓你不在擔(dān)憂并且愛上NullPointerException @CleanUp : 自動(dòng)資源管理:不用再在finally中添加資源的close方法 @Setter/@Getter : 自動(dòng)生成set和get方法 @ToString : 自動(dòng)生成toString方法 @EqualsAndHashcode : 從對(duì)象的字段中生成hashCode和equals的實(shí)現(xiàn) @NoArgsConstructor/@RequiredArgsConstructor/@AllArgsConstructor 自動(dòng)生成構(gòu)造方法 @Data : 自動(dòng)生成set/get方法,toString方法,equals方法,hashCode方法,不帶參數(shù)的構(gòu)造方法 @Value : 用于注解final類 @Builder : 產(chǎn)生復(fù)雜的構(gòu)建器api類 @SneakyThrows : 異常處理(謹(jǐn)慎使用) @Synchronized : 同步方法安全的轉(zhuǎn)化 @Getter(lazy=true) : @Log : 支持各種logger對(duì)象,使用時(shí)用對(duì)應(yīng)的注解,如:@Log4j
其它注解參考:https://projectlombok.org/tidelift
到此這篇關(guān)于Spring Boot整合Lombok的文章就介紹到這了,更多相關(guān)Spring Boot整合Lombok內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
深入解析Java的設(shè)計(jì)模式編程中單例模式的使用
這篇文章主要介紹了深入解析Java的設(shè)計(jì)模式編程中單例模式的使用,一般來(lái)說(shuō)將單例模式分為餓漢式單例和懶漢式單例,需要的朋友可以參考下2016-02-02Spring和Websocket相結(jié)合實(shí)現(xiàn)消息的推送
這篇文章主要介紹了Spring和Websocket相結(jié)合實(shí)現(xiàn)消息的推送的相關(guān)資料,本文介紹的非常詳細(xì)具有參考借鑒價(jià)值,感興趣的朋友一起學(xué)習(xí)吧2016-02-02Java實(shí)現(xiàn)高并發(fā)秒殺的幾種方式
高并發(fā)場(chǎng)景在現(xiàn)場(chǎng)的日常工作中很常見,本文主要介紹了Java實(shí)現(xiàn)高并發(fā)秒殺的幾種方式,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-05-05Java實(shí)現(xiàn)航空航班管理系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了Java實(shí)現(xiàn)航空航班管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-07-07java根據(jù)網(wǎng)絡(luò)地址保存圖片的方法
這篇文章主要為大家詳細(xì)介紹了java根據(jù)網(wǎng)絡(luò)地址保存圖片的方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-07-07解決springboot運(yùn)行出現(xiàn)錯(cuò)誤:找不到或無(wú)法加載主類com.xxxx.xxxx.Application問(wèn)題
文章介紹了在服務(wù)器上運(yùn)行一個(gè)未使用的Java項(xiàng)目時(shí)遇到的“找不到或無(wú)法加載主類”錯(cuò)誤,并提供了兩種解決方法:通過(guò)Maven install或build …、Goals輸入install并跳過(guò)測(cè)試來(lái)重新構(gòu)建項(xiàng)目2024-11-11SpringBoot執(zhí)行定時(shí)任務(wù)@Scheduled的方法
這篇文章主要介紹了SpringBoot執(zhí)行定時(shí)任務(wù)@Scheduled的方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-07-07