iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 9
1

Day 8 - Spring Data JPA 寫入與讀取資料 (3)

上一章講了JPA與Repository

今天如何使用Lombok, 讓開發過程更為簡單

Lombok是一個十分好用的java library, 我們可以在pom.xml檔引入

首先在pom.xml加上

<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
    <optional>true</optional>
</dependency>

然後在Visual Studio Code 按快捷鍵 CTRL + SHIFT + X 打開Extensions

輸入lombok, 點擊install

https://ithelp.ithome.com.tw/upload/images/20190925/2011951041ssXyZJw7.png

什麼是Lombok?

他是一個Java library, 可以自動幫我們加入getter, setter, constructor...等等

相信大家在寫Model時, 每次都要加一堆冗長的getter, setter

而使用Lombok一行程式碼都不用加, 只需要一個Annontation

簡化了繁瑣且重複的過程, 也讓程式碼更加簡潔乾淨

我們在這調整一下, Member.java

@Data
@NoArgsConstructor
@RequiredArgsConstructor
@Entity
public class Member {

    @Id
    private String mid;
    @NonNull
    private String email;
    @NonNullprivate String password;
    @NonNull
    private String firstName;
    @NonNull
    private String lastName;
    private Date createTime;
    private Date updateTime;

}

@Data:

自動產生getter, setter

@NoArgsConstructor:

自動生成不帶參數的constructor

例:

public Member(){

}

@RequiredArgsConstructor:

自動生成帶參數的constructor

如何指定要哪些參數呢? 與@Nonnull搭配使用

我們這邊對email, password, firstName, lastName 四個欄位增加了@NonNull

那就會自動生成

public Member(String email, String password, String firstName, String lastName){

}

@NonNull:

若在方法參數增加這個註解, 會自動檢查參數是否為空, 若為空則拋出NullPointException

設定好, 底下的getter跟setter都不用增加了, 簡化了許多程式碼, 也讓程式更乾淨明瞭

下一章 Day 10 - Lombok 簡化與加速開發流程 (2)


上一篇
Day 8 - Spring Data JPA 寫入與讀取資料 (3)
下一篇
Day 10 - Lombok 簡化與加速開發流程 (2)
系列文
Spring Boot and React - 前後端 30 天分手日記30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 則留言

0
alantsui
iT邦新手 5 級 ‧ 2020-02-06 02:54:36

NonNullprivate 應該是NonNull private

我要留言

立即登入留言