hibernate使用hql根據外來鍵查詢

2021-08-15 02:10:25 字數 614 閱讀 8747

記住重要的一點是:hql不算子據庫,他操作的是類物件。

這裡有兩張表

user(id,name)   對應user類(int id,string name)

score(id,math,user_id),user_id為外來鍵,對應user表中的id    對應score類(int id,int math,useruser_id)

注意:user_id,他是乙個物件,是乙個user類的物件

現在要根據user_id來查詢score中的資料。

hql語句是:from score s left outer joins.user_idwheres.user_id.id=?

其中,紅色部分指的是在score類中表示user類的屬性名稱,他是乙個類物件

藍色部分,前面的s.user_id是乙個user類的物件,user類物件.id就能拿到user類中的id值。

補充:以上情況適用於懶載入。若配置了lazy=false,即不進行懶載入,那麼可以直接使用from score s  wheres.user_id.id=?

hibernate多表查詢HQL

innerjoin 內連線 left outerjoin 左外連線 right outerjoin 右外連線 fulljoin 全連線,並不常用 sql中的條件用on即 leftjoin.on.hql中的條件用with即 leftjoin.with.語句innerjoin,left outerjoi...

hibernate框架中使用hql語句查詢資料庫

首先寫hql語句,string hql from user user是你要查詢的物件類名,當類名不唯一時需要寫出完整類名,比如在乙個專案中兩個包中都含有user類時,hql語句應該這樣寫,stirng hql from com.ss.model.user 根據hql語句建立查詢物件。session....

Hibernate之HQL語言查詢

建立hibernateutils類,便於直接獲取session package com.utils import org.hibernate.session import org.hibernate.sessionfactory import org.hibernate.cfg.configurat...