JPA裡自定義SQL查詢的一些問題

2021-09-30 14:42:03 字數 896 閱讀 7120

接著上次的圖書管理系統

還書的時候不僅要在還書的資料表新增新紀錄

還要去把借書表中對應的內容刪除

但是因為前端我寫的時候只返回了book_id和client_id

所以在還書的service裡還要根據這兩個id去查出對應的借書記錄,並刪掉

這裡可以用spring data 裡的自定義查詢來實現

自定義查詢以及spring data jpa的使用方法可以在這裡 有相關的介紹

因為我在設定rent這個實體類了裡設定的是book_id和client_id

所以在機智的idea的幫助下,我寫了這麼一句在repository裡寫了這麼一句

1

rent findbyclient_idandbook_id(integer client_id, integer book_id);

哈哈,這不是簡單嗎

然後執行

報錯哦,我天吶,來看看控制台的資訊吧

1

no property client found for type rent!

我來簡單翻譯下

在rent裡找不到client屬性

client? 不是client_id 嗎

經過查詢,終於在文件裡發現 乙個下劃線 _ 會被認為是and的意思

所以findbyclient_idandbook_id 就被理解為 根據client 和 id 和 book 和 id 來查詢

然後系統在rent裡找不到client 所以就報錯了

嗯,所以命名時候就不要用_ 下劃線就好了(idea 還挺 『機智』的)

現在去改應該還來的及

不說了,現在去改了..

JPA中自定義查詢語句

org.springframework.bootgroupid spring boot starter parentartifactid 2.0.4.releaseversion relativepath parent 實體類 entity table name sensitive apimodel...

自定義控制項的一些總結

自定義控制項功能 隱藏自定義控制項中textbox控制項的邊框,在 textbox 控制項下面劃一條直線。並可以通過屬性控制是否只可以輸入正整數 注意 1.屬性的特性描述既可以填也可以不填,如果不填該屬性將預設顯示到自定義控制項的雜項分組。description 該屬性在屬性欄中的描述 browsa...

jpa自定義sql的三種方式

1 在repository介面上註解 query引數 1 query select o from agentinfo o where o.userid 1 and o.balance 0 2 query value select from fl agentinfo a inner join sele...