促銷活動
學習
Adesua ahorow
任務
問卷及小測驗
遊戲
幫助
學習提醒時程表
社群
使用者
論壇
聊天
文章
成功故事
活動
評論
訂閱
亮色主題
課堂
評論
關於我們
開始
開始學習
現在就開始學習
Me Nkɔso
Adesua ahorow
探索地圖
課堂
等級 10
學習用 HQL 編寫查詢
SQL & Hibernate
等級 10,
課堂 0
1.1 HQL介紹 之前,您已經熟悉了 Hibernate,現在我將向您介紹HQL,又名Hibernate Query Language。實際上,這是為在 Hibernate 中編寫查詢而轉換的 SQL。它有幾個關鍵的區別。 使用類名而不是表名。 使用類字段名而不是表列名。 選擇的可選使用。 讓我們讓 Hibernate 返回給我們它在數據庫中的所有用戶。該請求如下所示: from User 僅此而已,為了比較,我們在 SQL 中提供了一個類似的查詢: select * fr
探索查詢類
SQL & Hibernate
等級 10,
課堂 1
2.1 Query類介紹 順便說一句,另一個重要的點是Query helper 類。你可以在這個例子中看到它: public List getAllEmployes() {
加入HQL
SQL & Hibernate
等級 10,
課堂 2
3.1 映射依賴實體 在 SQL 中,您可以使用 JOIN 編寫查詢。可以在 HQL 中做同樣的事情嗎?簡短的回答是肯定的。但完整的答案會更有趣。 首先,當我們在 SQL 中編寫 JOIN 時,通常意味著一個表引用另一個表。例如,task 表包含一個 employee_id 列,該列引用 employee 表的 id 列。 這種依賴性可以在 Hibernate 中使用註解來描述。首先,讓我們為表創建實體。首先,讓我們描述一下員工表: @Entity
帶參數的請求
SQL & Hibernate
等級 10,
課堂 3
4.1 查詢參數 Hibernate 允許您將參數傳遞給查詢。因此,所有與查詢和數據庫的工作都大大簡化了。 很難找到不可變的查詢。起初,您似乎只需要從數據庫中返回一個商品列表即可。然後事實證明,您需要在特定日期為特定用戶提供最新的產品列表。按必填字段排序,但不是整個列表,而是特定頁面:例如,從 21 到 30 的產品。 而這正是參數化查詢解決的問題。你用 HQL 寫一個查詢,然後你用“特殊名稱”——參數來替換可以改變的值。然後分別在執行請求的時候,可以傳遞這些參數的值。 讓我
請求長度限制
SQL & Hibernate
等級 10,
課堂 4
使用頁面:LIMIT 和 OFFSET 很多時候,數據庫中的數據是在“頁面”中檢索的。因為這就是處理大型列表的方便之處。我們首先查詢 1 到 20 行,然後是 21 到 40 行,依此類推。 這種情況很常見,SQL 對此 LIMIT 和 OFFSET 有特殊的運算符。 這些運算符的類似物也存在於 Hibernate 中。只有他們立即決定以單獨方法的形式製作它們: setFirstResult()類似於OFFSET。 setMaxResults()類似於LIMIT。 使用這些方
其他類型的請求
SQL & Hibernate
等級 10,
課堂 5
6.1 命名查詢 Hibernate 允許您不直接在代碼中存儲查詢。相反,他建議給查詢名稱並將它們作為註釋單獨存儲。好吧,那就直接通過它的名字來接受想要的請求吧。例子: @org.hibernate.annotations.NamedQueries({
Please enable JavaScript to continue using this application.