国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

Criteria查詢語句的補充:高級特性

開發 后端
本篇文章講述Hibernate中Criteria 查詢語句的補充。在代碼中提供的一對多的例子中,作者使用復合查詢,查詢所有用戶及其地址。

以下代碼對Criteria查詢做了一些補充。代碼內部有注釋。

  1. package com.shiryu.otm;  
  2.  
  3. import java.util.Iterator;  
  4. import java.util.List;  
  5.  
  6. import org.hibernate.Criteria;  
  7. import org.hibernate.Session;  
  8. import org.hibernate.SessionFactory;  
  9. import org.hibernate.Transaction;  
  10. import org.hibernate.cfg.Configuration;  
  11. import org.hibernate.criterion.DetachedCriteria;  
  12. import org.hibernate.criterion.Expression;  
  13. import org.hibernate.criterion.Order;  
  14. import org.hibernate.criterion.Projections;  
  15. import org.hibernate.criterion.Subqueries;  
  16.  
  17. public class Test2 {  
  18.     public static void main(String args[]) {  
  19.         SessionFactory factory = new Configuration().configure().buildSessionFactory();  
  20.         Session session = factory.openSession();  
  21.         Transaction tr = session.beginTransaction();  
  22.  
  23.         // Criteria查詢語句的補充  
  24.         // 一、復合查詢  
  25.         // 在這個一對多的例子中。我們使用復合查詢,查詢所有用戶及其地址。  
  26.         // Criteria criteria = session.createCriteria(User.class);  
  27.         // List list = criteria.list();  
  28.         //  
  29.         // for (int i = 0; i <  list.size(); i++) {  
  30.         // User user = (User) list.get(i);  
  31.         // System.out.println("\t user:"+i+" name is:" + user.getName());  
  32.         //              
  33.         // Set addrSet = user.getAddresses();  
  34.         // Iterator it = addrSet.iterator();  
  35.         // while(it.hasNext()){  
  36.         // Address addr = (Address)it.next();  
  37.         // System.out.println("\t\t user:"+i+" address is:"+addr.getAddress());  
  38.         // }  
  39.         // }  
  40.  
  41.         // 通過Criteria查詢條件,我們可以查詢位于上海的用戶  
  42.         // Criteria criteria = session.createCriteria(User.class);  
  43.         //  
  44.         // Criteria addCriteria =  
  45.         // criteria.createCriteria("addresses");//這里addresses和User類對應  
  46.         // addCriteria.add(Expression.like("address",  
  47.         // "%shanghai%"));//這里構造新的Criteria查詢過濾條件  
  48.         // List list = criteria.list();  
  49.         //  
  50.         // for (int i = 0; i <  list.size(); i++) {  
  51.         // User user = (User) list.get(i);  
  52.         // System.out.println("\t user:" + i + " name is:" + user.getName());  
  53.         //  
  54.         // Set addrSet = user.getAddresses();  
  55.         // Iterator it = addrSet.iterator();  
  56.         // while (it.hasNext()) {  
  57.         // Address addr = (Address) it.next();  
  58.         // System.out.println("\t\t user:" + i + " address is:"  
  59.         // + addr.getAddress());  
  60.         // }  
  61.         // }  
  62.  
  63.         /*  
  64.         * 二、DetachedCriteria的使用 hibernate2 中critria  
  65.         * 生命周期位于宿主Session生命周期之內,session創建criteria實例,Session被銷毀,critria實例也隨之失效  
  66.         * 這很大程度上限制了criteria的重用hibernate3 中提供了DetachedCriteria  
  67.         * 它可以脫離Session實例獨立存在,我們可以把通用的criteria查詢條件進行抽離,更好的實現代碼重用  
  68.         */ 
  69.  
  70.         DetachedCriteria deCriteria = DetachedCriteria.forClass(User.class);  
  71.         deCriteria.add(Expression.eq("name""zhaiyu"));  
  72.         deCriteria.add(Expression.eq("age"new Integer(21)));  
  73.  
  74.         Criteria criteria = deCriteria.getExecutableCriteria(session);// 在其需要的時候與session進行綁定  
  75.         Iterator it = criteria.list().iterator();  
  76.         while (it.hasNext()) {  
  77.             User user = (User) it.next();  
  78.             System.out.println(user.getName());  
  79.         }  
  80.  
  81.         /*  
  82.         * DetachedCriteria 也可以用于子查詢表達 下例返回了年齡超過了平均值的用戶記錄  
  83.         */ 
  84.         DetachedCriteria avgAge = DetachedCriteria.forClass(User.class);  
  85.         avgAge.setProjection(Projections.avg("age"));  
  86.  
  87.         Criteria criteria2 = session.createCriteria(User.class);  
  88.         criteria2.add(Subqueries.propertyGt("age", avgAge));  
  89.  
  90.         List list = criteria2.list();  
  91.         // 我們可以將DetachedCriteria納入查詢表達式 :select ... from User where age > (select  
  92.         // avg(age) from User)  
  93.         // (select avg(age) from User) 由DetachedCriteria avgAge描述  
  94.  
  95.         /* 三、Criteria查詢語句的高級特性 */ 
  96.         // 限定返回記錄范圍  
  97.         Criteria criteria3 = session.createCriteria(User.class);  
  98.         // 限定從第100條開始的20條記錄  
  99.         criteria3.setFirstResult(100);  
  100.         criteria3.setMaxResults(20);  
  101.  
  102.         // 對記錄進行排序  
  103.         Criteria criteria4 = session.createCriteria(User.class);  
  104.         criteria4.add(Expression.eq("id"new Integer(2)));  
  105.         criteria4.addOrder(Order.asc("name"));  
  106.         criteria4.addOrder(Order.desc("id"));  
  107.  
  108.         /* Criteria分組與統計 */ 
  109.         Criteria criteria5 = session.createCriteria(User.class);  
  110.         criteria5.setProjection(Projections.groupProperty("age"));  
  111.  
  112.         Iterator it3 = criteria5.list().iterator();  
  113.         while (it.hasNext()) {  
  114.             System.out.println(it.next());  
  115.         }  
  116.     }  
  117. }  

【編輯推薦】

  1. Hibernate中使用Criteria查詢實例
  2. Hibernate中使用DetchedCriteria
  3. Hibernate之Criteria進階查詢
  4. Hibernate之Criteria基本查詢
  5. Hibernate的事務:事務對象的方法
責任編輯:book05 來源: 百度博客
相關推薦

2021-07-05 09:24:06

MySQL SQL 語句數據庫

2009-06-17 14:17:40

Criteria條件查Hibernate

2009-06-30 16:46:45

Criteria進階查

2009-06-30 16:44:10

Criteria基本查

2009-06-30 16:55:19

2010-11-25 14:33:26

MySQL查詢分頁

2009-11-13 09:24:58

JPA 2.0Criteria AP

2009-06-26 16:15:04

Criteria的用法Hibernate

2009-06-18 10:07:03

CriteriaHibernate

2010-05-27 11:49:37

2009-09-07 17:46:18

LINQ高級特性

2009-09-28 12:57:54

Hibernate C

2018-08-21 09:45:07

數據庫PostgreSQLSQL特性

2010-10-21 12:16:11

SQL Server查

2010-11-24 17:36:02

MySQL條件查詢語句

2010-09-26 15:23:24

SQL語句

2010-11-18 13:32:12

Oracle分頁查詢

2024-10-08 08:00:00

2009-09-24 13:03:38

Hibernate C

2010-11-02 08:58:59

Cassandra
點贊
收藏

51CTO技術棧公眾號

蜜桃av久久久亚洲精品| 亚洲日本欧美在线| 免费av一区二区| 色是在线视频| 四虎最新地址发布| 国产香蕉久久| 日韩av在线免费播放| 久久久精品亚洲| 在线免费色视频| 欧美在线你懂的| 日本精品久久久久久久久久| 亚洲一区自拍| 精品日韩美女| 亚洲一区亚洲| 欧美日韩精品一区| 亚洲一区二区毛片| 国产欧美一区二区三区另类精品| 久久一区二区三区喷水| 国产成人鲁鲁免费视频a| 日韩激情网站| 国产激情视频一区| 久久久人成影片免费观看| 成人有码在线播放| 亚洲欧美日韩在线观看a三区| 国产欧美综合精品一区二区| 在线欧美视频| 日本成人黄色免费看| 黄色成人在线| 成人免费高清完整版在线观看| 精品久久国产一区| 精品国内亚洲在观看18黄| 四虎影视4hu4虎成人| 日韩精品在线免费观看视频| cao在线视频| 一区二区成人av| 国产亚洲字幕| 日韩美女在线观看| 99精品美女| 99r国产精品视频| 99精品国产福利在线观看免费 | 日韩精品在线中文字幕| 久久综合久久综合亚洲| 国产日韩欧美久久| 欧美性猛交xxxx免费看久久久| 超碰在线观看免费版| 亚洲精品丝袜日韩| 91精品入口| 91欧美精品午夜性色福利在线 | 久久久久久久香蕉| 26uuu国产在线精品一区二区| 欧美国产日韩在线播放| 亚洲影院理伦片| 免费在线观看av| 国产一区二区三区视频免费| 国产精品三p一区二区| 亚洲一区二区三区毛片 | 91情侣偷在线精品国产| 首页国产欧美久久| 男人亚洲天堂网| 香蕉av福利精品导航| www久久日com| 久久久久久久亚洲精品| 欧美精品综合| 9色porny| 精品高清一区二区三区| а√在线天堂官网| 国产ts一区二区| 日韩在线一区二区| 色总=综合色| 欧洲精品一区二区| 欧美a一级片| 欧美激情一区二区三区高清视频 | 久久久久久久久久婷婷| 在线日本成人| www.日日操| 欧美男生操女生| 日韩av综合| 久久久精品国产一区二区三区| 久久久久久电影| 成人免费视屏| 国产成人一区二区三区| 国产一区激情在线| 婷婷国产在线| 久久久成人精品视频| 在线高清一区| 电影天堂最新网址| 最近中文字幕日韩精品 | yellow视频在线观看一区二区| 97久久超碰国产精品| 免费人成在线观看播放视频| 午夜精品一区二区三区av| 秋霞午夜av一区二区三区| 精东影业在线观看| 九色精品免费永久在线| 久久国产精品99久久久久久老狼| 最近中文视频在线| 久久久视频免费观看| 国产老肥熟一区二区三区| 高清福利在线观看| 欧美综合国产精品久久丁香| 懂色av一区二区在线播放| 成人日韩欧美| 5566中文字幕一区二区| 综合分类小说区另类春色亚洲小说欧美| 川上优av中文字幕一区二区| 国产一区视频观看| 午夜天堂影视香蕉久久| 福利电影一区| 久久久久久久久久久视频| 亚洲精品一区二区久| 美女日韩在线中文字幕| 91精彩视频在线观看| 日韩美女在线播放| 国产精品久久久久一区二区三区共 | 国内成人精品一区| 国产大陆a不卡| 欧美hdxxx| 久久久久久久久一区| 日本乱码高清不卡字幕| 日本久久精品| 国产福利电影| 91爱爱小视频k| 国产精品久久久久天堂| 成人性生交大片免费看96| 九九热免费精品视频| 久久久久久18| 亚洲日本一区二区| 欧美一区 二区| 亚洲这里只有精品| 欧美成人在线影院| 久久综合九色欧美综合狠狠| 农村妇女一区二区| 欧美日韩成人免费视频| 国产丝袜一区二区| 国产精品资源站在线| 原纱央莉成人av片| 久艹在线免费观看| 久久久国产成人精品| 欧美极品美女视频| 日韩深夜福利| 最新在线观看av| 国产一区二区黄色| 日韩一本二本av| 国产一区二区视频在线播放| 日韩精品免费观看视频| 能在线观看的av网站| 日本精品久久久| 国产伦精品一区二区三区四区免费| 久久九九久久九九| 欧州一区二区三区| 久久久精品三级| 高清视频欧美一级| 中文字幕在线不卡一区| 欧美a大片欧美片| 色资源网站在线观看| 成人性生交大片免费看小说| 色成年激情久久综合| 欧美欧美天天天天操| 国产在线1区| 一区高清视频| 最近中文字幕2019免费| 欧美激情一区二区三区蜜桃视频| 成人盗摄视频| 性欧美精品孕妇| 免费成人深夜夜行视频| 亚洲精品国产品国语在线| 成人禁用看黄a在线| 亚洲一区二区三区中文字幕在线观看| h七七www色午夜日本| 666精品在线| 亚洲国产日韩欧美在线动漫| 99久久久国产精品免费蜜臀| 精品成人自拍视频| 国产系列电影在线播放网址| 一区二区三区av在线| 久热在线中文字幕色999舞| 一区二区三区四区五区视频在线观看| 激情婷婷久久| 电影在线观看一区二区| 午夜免费啪视频观看视频| 欧美一区二区三区四区夜夜大片| 在线观看久久久久久| 亚洲黄色在线视频| 日韩av在线播放中文字幕| 亚洲视频资源| 国产乱理伦片a级在线观看| www.夜夜爱| 国产日韩精品在线| 亚洲美女自拍视频| 亚洲综合免费观看高清完整版在线 | 免费a在线看| 黄色a级片免费| 国产日韩欧美成人| 亚洲色图五月天| 欧美日韩免费观看中文| 成人动漫视频在线| 欧美天天视频| 黄色网一区二区| 免费在线小视频| 亚洲欧洲闷骚av少妇影院|