您好,登錄后才能下訂單哦!
本篇內容主要講解“Hibernate Framework查詢怎么實現”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“Hibernate Framework查詢怎么實現”吧!
1.Hibernate Query Language (HQL):它是ANSI SQL的最小OO Dialect, 例:
session.createQuery("from Category c where c.name like 'Laptop%'"); entityManager.createQuery("select c from Category c where c.name like 'Laptop%'");
2.Criteria query :它是HQL查詢的延伸,提供了一些Hibernate Framework高級查詢功能,例:
session.createCriteria(Category.class) .add( Restrictions.like("name", "Laptop%") ); 3.Native SQL query : session.createSQLQuery( "select {c.*} from CATEGORY {c} where NAME like 'Laptop%'" ).addEntity("c", Category.class);
3.Native SQL query :
session.createSQLQuery( "select {c.*} from CATEGORY {c} where NAME like 'Laptop%'" ).addEntity("c", Category.class);
最近,我在項目中經常遇到Hibernate數據查詢的任務,我對一些我遇到的較難的課題舉例進行說明:《表述SELECT》
Criteria crit = session.createCriteria(User.class) .setProjection( Projections.projectionList() .add( Projections.property("lastname")) .add( Projections.property("firstname")) .list();
《表述WHERE》
Criteria crit = session.createCriteria(User.class) .add(Restrictions.eq("email", "foo@hibernate.org")) .uniqueResult();
《表述GROUP》
Criteria crit = session.createCriteria(User.class) .setProjection( Projections.projectionList() .add( Projections.groupProperty("lastname")) .add( Projections.groupProperty("firstname")) .list()
《表述ORDER》
Criteria crit = session.createCriteria(User.class) .addOrder( Order.asc("lastname") ) .addOrder( Order.asc("firstname") ) .list();
《取TOP 5結果》:
Criteria crit = session.createCriteria(Cat.class); .setMaxResults(5) .list();
《分頁》:
Criteria crit = session.createCriteria(Cat.class) .setFirstResult(1) .setMaxResults(50) .list();
《取查詢結果》:如果使用select或group,必須使用object[]來獲得查詢結果List值;
如果未使用select或group,必須使用java object[]來獲得查詢結果List值;
《涉及組合primary key屬性》:
Criteria crit = session.createCriteria(activitylog.class) .add( Restricts.eq(“comp_id.custId”,customerid0) ) .add( Restricts.ge(“createdTs”, starttime) ) .add( Restricts.le(“createdTs”, endtime ) ) .list();
《Foreign Key聯合查詢》:
SQLQuery query = session.createSQLQuery(“select activitylog_seq.nextval as sessid from dual”); Query.addScalar(“sessid”,Hibernate.LONG); Long long0 = query.uniqueResult();
到此,相信大家對“Hibernate Framework查詢怎么實現”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。