Udemy Course Spring Framework 46-Spring JPA CRUD-NameQuery(JPQL)!
JPA NameQuery(自定義Query) JPQL(Java Persistence Query Language)
目前Speing JDBC可以做到的SQL Query在JPA還差一個findAll
我們將使用可以自定義的SQL Query
在PersonJpaRepository內建立新的findAll Method
上面的findAll()方法內使用了entityManager.createNamedQuery
後面參數代入了一個String與對應的Person Entity
該String:"find_all_persons"將會對應以下Person class內改寫的內容如下:
其實就多@NamedQuery這行:
有試過select p from Person p若打成select p from person p
會報錯!!
因為那邊看起來像SQL句但實際上是要給JPA看的,其中的Person指Entity
同樣在JPADemoApplication加入呼叫新的findAll方法
執行得:
以上建立的SQL我們稱之為JPQL(Java Persistence Query Language)
給一個Query一個特別的名字(在這裡我們定了一個叫"find_all_persons")
然後使用他!!