国产色诱美女免费视频|欧美精彩狠狠色丁香婷婷|91黑人|日本黄色小视频|欧美一级黄色视频在这里免费观看

IT培訓(xùn)-高端面授IT培訓(xùn)機(jī)構(gòu)
云和教育:云和數(shù)據(jù)集團(tuán)高端IT職業(yè)教育品牌
  • 國(guó)家級(jí)
    全民數(shù)字素養(yǎng)與技能培訓(xùn)基地
  • 河南省
    第一批產(chǎn)教融合型企業(yè)建設(shè)培育單位
  • 鄭州市
    數(shù)字技能人才(碼農(nóng))培養(yǎng)評(píng)價(jià)聯(lián)盟

模型類的編寫有沒有什么靠譜的優(yōu)化方法?

  • 發(fā)布時(shí)間:
    2023-02-15
  • 版權(quán)所有:
    云和教育
  • 分享:

模型類的編寫需要私有屬性,setter…getter…方法、toString方法 和構(gòu)造函數(shù)。雖然這些內(nèi)容不難,同時(shí)也都是通過IDEA工具生成的,但是過程還是必須得走一遍,那么對(duì)于模型類的編寫有沒有什么優(yōu)化方法?可以通過Lombok來(lái)實(shí)現(xiàn)優(yōu)化。

Lombok,是一個(gè)Java類庫(kù),提供了一組注解,簡(jiǎn)化POJO實(shí)體類開發(fā)。下面看Lombok的使用步驟:

步驟1:添加lombok依賴

<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
    <!--<version>1.18.12</version>-->
</dependency>

注意:版本可以不用寫,因?yàn)镾pringBoot中已經(jīng)管理了lombok的版本。

步驟2:安裝Lombok的插件

新版本IDEA已經(jīng)內(nèi)置了該插件,如果刪除setter和getter方法程序有報(bào)紅,則需要安裝插件。

1676442029959_圖片1.png

如果在IDEA中找不到lombok插件,可以訪問如下網(wǎng)站

https://plugins.jetbrains.com/plugin/6317lombok/versions

根據(jù)自己IDEA的版本下載對(duì)應(yīng)的lombok插件,下載成功后,在IDEA中采用離線安裝的方式進(jìn)行安裝。

1676442184185_圖片2.png

步驟3:模型類上添加注解

Lombok常見的注解有:

@Setter:為模型類的屬性提供setter方法

@Getter:為模型類的屬性提供getter方法

@ToString:為模型類的屬性提供toString方法

@EqualsAndHashCode:為模型類的屬性提供equals和hashcode方法

@Data:是個(gè)組合注解,包含上面的注解的功能

@NoArgsConstructor:提供一個(gè)無(wú)參構(gòu)造函數(shù)

@AllArgsConstructor:提供一個(gè)包含所有參數(shù)的構(gòu)造函數(shù)

Lombok的注解還有很多,上面加粗的三個(gè)是比較常用的,其他的大家后期用到了,再去補(bǔ)充學(xué)習(xí)。

@Data
@AllArgsConstructor
@NoArgsConstructor
public class User {
    private Long id;
    private String name;
    private String password;
    private Integer age;
    private String tel;
}

說(shuō)明:

Lombok只是簡(jiǎn)化模型類的編寫,我們之前的方法也能用,比如有人會(huì)問:我如果只想要有name和password的構(gòu)造函數(shù),該如何編寫?

@Data 
@AllArgsConstructor 
@NoArgsConstructor 
    public class User { 
    private Long id; 
    private String name; 
    private String password; 
    private Integer age; 
    private String tel; 
    
    public User(String name, String password) { 
        this.name = name; 
        this.password = password; 
    } 
}

這種方式是被允許的。