首頁(yè)技術(shù)文章正文

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

更新時(shí)間:2023-02-15 來(lái)源:黑馬程序員 瀏覽量:

IT培訓(xù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;
}

說明:

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; 
    } 
}

這種方式是被允許的。





分享到:
在線咨詢 我要報(bào)名
和我們?cè)诰€交談!