Spring Data JPA
前面使用的都是ORM基礎的元件,需要Code定義的CRUD還是很多
接著我們直接引用Spring JPA已經幫我們寫好的元件改寫
新增Inteface:PersonSpringDataRepository extends(擴展)JpaRepository
其中JpaRepository需帶入Entity(此處為Person)及
PK的類別(Person的PK是Id,其類別是Integer)
而JpaRepository已經為我們定義了許多基本的CRUD供使用
然後再複製JPADemoApplication為SpringDataDemoApplication
上面由JPADemoApplication複製來的SpringDataDemoApplication
只改了紅框處,可以發現幾乎沒太多錯誤!!
findById完全還是findById
insert需改為save
update也需改為save
deleteById完全還是deleteById
findAll完全還是findAll
如上所述修改完的SpringDataDemoApplication如下
然後把先前的JPADemoApplication上的@SpringBootApplication註解
只讓新複製出來的SpringDataDemoApplication執行
執行完全正常!!
為什麼會這樣呢?
因為JpaRepository已經有定義了
CURD(findById save(i.e. insert update) deleteById findAll這些方法)
我們只是要做一個Interface去擴展繼承(JpaRepository)
就可以透過這個Interface來實際使用!!