這是我的專案。我有問題,我想從表Student中獲取資料加入許多表分支,房間和性別使用注釋@Query作為影像MySql中的站點查詢
這是帶有陳述句 MySql 的查詢
這是我想在 Spring Data JPA 中使用 @Query 的代碼,目的是在加入多個表時獲取資料
在我呼叫 API 后,它通知錯誤 這是錯誤
我需要支持,這是我的專案:https : //github.com/daovantam0410/quan-ly-dao-tao
uj5u.com熱心網友回復:
您在這里有兩個選擇,您可以使用從資料庫中獲取學生。
List<Student> students = studentRepository.findAll();
這將通過發出其他查詢加載其他物體(房間、性別和分支),這將導致著名的問題 N 1 queries
因此,要一次性加載所有物體,請使用entity graphs或fetch join
@Query(value = "SELECT st FROM Student st INNER JOIN FETCH st.branch b INNER JOIN FETCH st.gender g INNER JOIN FETCH st.room r")
List<Student> fetchStudentDataJoinTable();
注意:如果屬性 ( room,gender和branch) 可以null在 student 中,則使用left join代替inner join。
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/341284.html
上一篇:如何禁用java中的方法
下一篇:SpringBootOpenshiftPOSTio.undertow.util.ParameterLimitException:UT000047:引數數量超過最大值1000
