JPA多表關聯查詢
JPA多表關聯查詢
作用:就是實現使用一個實體類物件操作或者查詢多個表的資料。
回顧:配置多表聯絡查詢必須有兩個步驟;
1. 在實體類裡面建立表與表之間的關係。
2. 配置關聯關係,JPA使用註解配置
一對多配置
需求:指定OID查詢客戶的資訊(公司資訊),同時也查詢關聯的聯絡人資訊
配置步驟
/*
* 通過客戶找聯絡人,所以再Customer實體類配置
* 客戶表和實體類是一對多的關係,意味著一個實體類物件可以儲存多個聯絡人
* 所以使用集合接受聯絡人資料
*
* 基於JPA標準要求,List已經不需要再外來鍵維護一個排序欄位
* 所以基於JPA的配置,建議使用List集合
*/
//宣告關係,一對多
@OneToMany
//一對多必須要指定外來鍵的欄位名 (一定要配置外來鍵關聯)
@JoinColumn(name="lkm_cust_id")
private List<Linkman> linkmans;
public List<Linkman> getLinkmans() {
return linkmans;
}
注意:
1. 配置關聯的兩個實體類,必須有一個外來鍵欄位建立和資料庫的關聯的。
2. @JoinColumn用於設定,關聯的外來鍵約束的欄位(外來鍵配置)
3. 使用JPA註解配置的集合建議使用List
- 測試程式碼
//需求:指定OID查詢客戶的資訊(公司資訊),同時也查詢關聯的聯絡人資訊
@Test
public void find(){
//1.獲得操作物件,實體管理類物件
EntityManager manager = JPAUtils.getEntityManager();
Customer customer = manager.find(Customer.class, 1L);
System.out.println("客戶名:"+customer.getCustName());
List<Linkman> linkmans = customer.getLinkmans();
for(Linkman l:linkmans){
System.out.println("聯絡人:"+l.getLkmName());
}
manager.close();
}
相關文章
- JPA 之 多表聯合查詢
- Spring Data JPA 實現多表關聯查詢Spring
- jpa動態查詢與多表聯合查詢
- MySQL多表關聯查詢MySql
- JPA的多表複雜查詢
- 如何做多表關聯查詢
- mysql中的多表關聯查詢MySql
- thinkphp中的多表關聯查詢PHP
- MyBatisPlus怎麼多表關聯查詢?MyBatis
- Spring Data Jpa 複雜查詢總結 (多表關聯 以及 自定義分頁 )Spring
- SpringBoot JPA 表關聯查詢Spring Boot
- onethinkphp 如何做多表關聯查詢PHP
- thinkPHP多表聯合查詢PHP
- Mybatis 多表關聯查詢(1) one-to-one關係MyBatis
- Spring data jpa 多表查詢(三:多對多關係動態條件查詢)Spring
- SQL優化之多表關聯查詢-案例一SQL優化
- Spring JPA 聯表查詢Spring
- 多表關聯查詢中,關聯欄位都應該建立索引嗎?索引
- Mybatis【15】-- Mybatis一對一多表關聯查詢MyBatis
- SpringBoot + JPA的自學之路(三)多表連線查詢Spring Boot
- mybatis多表聯合查詢的寫法MyBatis
- 多表查詢
- DataSet多表關聯實現本地資料複雜的查詢
- 實現多表關聯來方便你的SELECT查詢功能
- Spring Data Jpa 的簡單查詢多表查詢HQL,SQL ,動態查詢, QueryDsl ,自定義查詢筆記SpringSQL筆記
- 多表聯合查詢 - 基於註解SQLSQL
- 【MySQL】多表查詢MySql
- Django 多表查詢Django
- MySQL 多表查詢MySql
- 04多表查詢
- mysql多表查詢MySql
- Spring Data JPA 實現聯表查詢Spring
- MYSQL學習筆記24: 多表查詢(聯合查詢,Union, Union All)MySql筆記
- 區分關聯子查詢和非關聯子查詢
- exist-in和關聯子查詢-非關聯子查詢
- SQL查詢的:子查詢和多表查詢SQL
- MyBatis關聯查詢MyBatis
- thinkphp關聯查詢PHP