java關於lombok(包括父類參數)


使用說明

要使用lombok,必須是用插件,目前我所知道能用的工具是idea。具體安裝插件方式如下圖:

你好! 這是你第一次使用 **Markdown編輯器** 所展示的歡迎頁。如果你想學習如何使用Markdown編輯器, 可以仔細閱讀這篇文章,了解一下Markdown的基本語法知識。

使用方式

如果是使用maven的直接加入依賴就可以了,如果不是就在網上找這個jar的地址下載,這里不錯說明(現在基本上都還是用maven來的的吧)。

    <dependency>
      <groupId>org.projectlombok</groupId>
      <artifactId>lombok</artifactId>
      <version>1.18.2</version>
      <scope>provided</scope>
    </dependency>

   
   
  
  
          

然后在bean對象中加入注釋就可以了,如下所示

@Data
@NoArgsConstructor
@AllArgsConstructor
public class ColumnBO {
    /** * 列名 */
    private String columnName;
    /** * 轉換后的列名 */
    private String columnNameTrans;
    /** * 數據類型 */
    private String dataType;
    /** * 轉換后的數據類型 */
    private String dataTypeTrans;
    /** * 注釋 */
    private String columnComment;

}

打開structure就能看到get、set、三個基本方法的重寫和構造方法了
在這里插入圖片描述

注釋類型

官方所有的注釋:https://www.projectlombok.org/features/all

@NonNull

參數不能為空,不然會空指針異常

@Data(常用)

=@ToString+@EqualsAndHashCode+@Getter+@Setter

@NoArgsConstructor(常用)/@RequiredArgsConstructor(常用)/@AllArgsConstructor(常用)

無參構造、必填參數構造(@NonNull)、全參構造;生成構造函數功能較弱,有些時候需要自己寫一些參數的構造函數,構造函數使用注釋和自己寫一些參數構造一起使用,有時候會啟動不了。這個問題還沒有找到原因。

@Getter/@Setter/@Getter(lazy=true)

自動創建get、set;lazy要使用此特性,請創建一個私有的final變量,用運行開銷較大的表達式初始化它,並使用@Getter(lazy=true)注釋字段。該字段將對代碼的其余部分隱藏,並且在首次調用getter時,表達式的計算不會超過一次。

@ToString/@EqualsAndHashCode

自動創建tostring、equals、hashcode方法

下面幾個參數還沒有用過,等有空研究下

@Cleanup

@Value

@Builder

@SneakyThrows

@Synchronized

@Log

優缺點

優點:bean對象更加簡潔,使用方便了

缺點:可讀性下降,構造方式不夠靈活

問題,父類參數

需要加上參數:callSuper = true
例如:@ToString(callSuper = true)

原文地址:https://blog.csdn.net/u014803081/article/details/84574016#Builder_72


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM