如何使用Hibernate/JPA的JPQL/HQL查詢提取?
當不能直接提取時,我們可以考慮JPQL / HQL查詢提取。
本文的應用程式展示如何透過JpaRepository,EntityManager和Session實現查詢概念的證明。
關鍵點:
- 對於JpaRepository, 使用@Query或Spring Data Query Creation
- 對於EntityManager和Session, 使用該createQuery()方法
原始碼可以在這裡找到
JpaRepository:
@Repository public interface UserRepository extends JpaRepository<User, Long> { @Transactional(readOnly = true) List<User> findByName(String name); @Transactional(readOnly = true) @Query("select u from User u where u.name = ?1") List<User> fetchUsersByName(String name); } |
@Repository @Transactional(readOnly = true) public class Dao<T, ID extends Serializable> implements GenericDao<T, ID> { @PersistenceContext private EntityManager entityManager; @Override public List<T> findByName(String name) { List<T> results = entityManager. createQuery("select u from User u where u.name=:name") .setParameter("name", name) .getResultList(); return results; } @Override public List<T> findByNameViaSession(String name) { Session session = entityManager.unwrap(Session.class); List<T> results = session.createQuery("select u from User u where u.name=:name") .setParameter("name", name) .list(); return results; } } |
相關文章
- hibernate中hql查詢
- Hibernate hql 多表查詢
- Hibernate 之強大的HQL查詢
- hibernate的hql查詢語句總結
- Hibernate通常是三種:hql查詢,QBC查詢和QBE查詢:
- 如何在Hibernate/JPA的實體和查詢中使用Java 8 Optional?Java
- Spring Data Jpa 的簡單查詢多表查詢HQL,SQL ,動態查詢, QueryDsl ,自定義查詢筆記SpringSQL筆記
- 【Hibernate框架開發之八】Hibernate 查詢語言Query Language(HQL)框架
- JPA之使用JPQL進行CRUD操作
- Hql查詢語句
- 391、Java框架46 -【Hibernate - 查詢HQL、查詢Criteria、查詢標準SQL】 2020.10.19Java框架SQL
- Spring Data JPA基本增刪改查和JPQL查詢(含完整程式碼和視訊連線)Spring
- 如何透過javax.persistence.Tuple和JPQL提取DTO?Java
- Hibernate_HQL--實體、屬性查詢,引數繫結,引用查詢(隨時溫習一遍)
- JPA 連表查詢
- JPA的多表複雜查詢
- Hibernate 查詢
- JPA使用Specification pattern 進行資料查詢
- spring data JPA 模糊查詢 --- 使用 LIKE --- 的寫法Spring
- jpa一對多查詢
- JPA時間段查詢
- spring data jpa查詢Spring
- JPA多表關聯查詢
- websphere 6.1如何將open jpa 切換為hibernate jpaWeb
- 如何在SpringBoot中使用Hibernate/JPA的@NaturalId?Spring Boot
- jpa動態查詢與多表聯合查詢
- Hibernate查詢方式
- Hibernate——Query查詢
- Hibernate 框架的查詢方式框架
- 使用Hibernate、JPA、Lombok遇到的有趣問題Lombok
- jpa 聯合查詢資料,查詢使用者資訊與部門資訊
- JPA 之 多表聯合查詢
- Spring JPA 聯表查詢Spring
- Hibernate--HQL基礎語法
- Hibernate-hql語法總結.
- Hibernate 查詢語句
- hibernate的三種查詢方式
- hibernate查詢的方式 都有哪些