Udemy Course Spring Framework 45-Spring JPA CRUD!

ZONGRU Li
3 min readMar 21, 2019

--

JPA CRUD 及sequence PK序號自動生成問題!

改寫PersonJpaRepository,新增update與insert的Method

並在JPADemoApplication內加入呼叫這兩個Method

執行得:

進入網站:http://localhost:8090/h2-console

請仔細看:

INSERT的資料列上ID位置不是吃到我們給的數字10004

而是JPA自動生成的ID:1(因為有設定@GeneratedValue)

由於前面我們有在Person class內多建一個不帶ID的建構子

所以我們可以試著改寫JPADemoApplication內呼叫的INSERT方法為如下:

再次執行得:

可以看到JPA替我們自己生出ID:1

再補上delete資料的部分

於PersonJpaRepository建立delete Method

可以注意到稍有不同的部分,在delete部分我們會先找到該ID的Person Entity

再由這個Person Entity去透過JPA的entityManager的remove方法執行刪除

然後在JPADemoApplication去呼叫delete方法

但注意這個沒有回傳值,所以就不用logger去觀察

執行得:

H2-console也可以看到:

--

--

ZONGRU Li
ZONGRU Li

Written by ZONGRU Li

2022/11/17 開源部分個人筆記給LINE "Java程式語言討論區"社群,希望能對社群的技術學習做一點點貢獻.(掩面....記得退訂閱!

No responses yet