麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 編程設計 > 正文

Hibernate高級查詢實戰

2023-06-11 14:56:25
字體:
來源:轉載
供稿:網友

大家知道,在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查詢的延伸,提供了一些高級查詢功能
例:
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);

最近,我在項目中經常遇到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", "[email protected]"))
.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聯合查詢》:
Criteria crit = session.createCriteria(activitylog.class)
.createAlias( “taskCodeRf”, “tc” )
.setProjection( Projections.projectionList()
.add( Projections.property("UserId"))
.add( Projections.property("tc.taskdescription"))
.list();

《Native Query》:
SQLQuery query = session.createSQLQuery(“select  activitylog_seq.nextval as sessid from dual”);
Query.addScalar(“sessid”,Hibernate.LONG);
Long long0 = query.uniqueResult();

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 午夜国内精品a一区二区桃色 | 欧洲成人一区 | 宅男噜噜噜66国产免费观看 | 国产成人精品自拍视频 | 99亚洲伊人久久精品影院红桃 | 久久影院国产精品 | 国产精品久久久久久久久久了 | 在线a亚洲视频播放在线观看 | 一级片免费在线 | videos韩国| 国产精品视频海角社区88 | 毛片视频在线免费观看 | 欧洲精品色 | 久久精品23| 毛片在线免费观看视频 | 亚洲第一成av人网站懂色 | 国产妞干网 | 露脸各种姿势啪啪的清纯美女 | 免费观看国产视频 | 狠狠色成色综合网 | 日本中文字幕网址 | 精品呦女| 黄色视频一级毛片 | av免费在线网 | 国产一级在线看 | 美女视频黄视大全视频免费网址 | 精品国产一级毛片 | 大学生a级毛片免费视频 | 在线观看国产 | 日韩黄色片在线观看 | 欧产日产国产精品乱噜噜 | 午夜精品小视频 | 性爱免费视频 | 欧美黑人一级 | 久久爽精品区穿丝袜 | 最近免费观看高清韩国日本大全 | 女18一级大黄毛片免费女人 | 激情免费视频 | 日本黄色一级毛片 | av电影网在线观看 | 国产午夜电影 |