<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    空間站

    北極心空

      BlogJava :: 首頁 :: 聯(lián)系 :: 聚合  :: 管理
      15 Posts :: 393 Stories :: 160 Comments :: 0 Trackbacks
    Criteria Query是Hibernate提供的將SQL語句對象化表示的一種方法。當我們使用JDBC方式查詢數(shù)據(jù)時會這樣寫: 
    select NAME FROM EMPLOYEE where ID = '001' 

    使用Hibernate的Criteria Query方式查詢時,就可以使用我們已經(jīng)習慣了的面向?qū)ο蟮姆绞健H缦拢?/font> 

     
    程序代碼 程序代碼
    import net.sf.hibernate.Criteria; 
    import net.sf.hibernate.expression.Expression; 
    ... 

    Criteria criteria = session.createCriteria(Employee.class); 
    criteria.add(Expression.eq("id", "001")); 
    ArrayList list = criteria.list(); 
    ... 


      其中Expression對象是where條件的封裝,提供了查詢限定機制,現(xiàn)在介紹一下他的具體使用:
     
     Expression的方法描述 
    Expression.eq:對應SQL條件中的"field = value"。如:Expression.eq("id","001") 
    Expression.allEq:參數(shù)為一個Map對象,其中包含了多個屬性和值對應關系。相當于多個Expression.eq關系,多個條件。如: 
    程序代碼 程序代碼
    map.put("id", "001"); 
    map.put("name", "hiswing"); 
    Expression.allEq(map); 


    Expression.gt:對應SQL條件中的"field > value "。如:Expression.gt("salary", new Integer(5000)) 
    Expression.ge:對應SQL條件中的"field >= value"。 
    Expression.lt:對應SQL條件中的"field < value"。 
    Expression.le:對應SQL條件中的"field <= value"。 
    Expression.between:對應SQL條件中的"between"。 
    Expression.like:對應SQL條件中的"field like value"。 
    Expression.in:對應SQL條件中的"field in …"。 
    Expression.eqProperty:用于比較兩個屬性之間的值,對應SQL條件中的"field = field"。如:Expression.eqProperty("Employee.id", "Group.eid"); 
    Expression.gtProperty:用于比較兩個屬性之間的值,對應SQL條件中的"field > field"。 
    Expression.geProperty:用于比較兩個屬性之間的值,對應SQL條件中的"field >= field"。 
    Expression.ltProperty:用于比較兩個屬性之間的值,對應SQL條件中的"field < field"。 
    Expression.leProperty:用于比較兩個屬性之間的值,對應SQL條件中的"field <= field"。 
    Expression.and:and關系組合。
     
    如: 
    Expression.and( 
      Expression.eq("name","hiswing"), 
      Expression.eq("sex", new Integer(1)) 


    Expression.or:or關系組合。(使用方法同Expression.and) 
    Expression.sql:我們可以通過這個方法直接通過SQL語句限定查詢條件。
     

      注:在使用Criteria時,Expression中的KEY為POJO中的屬性。如Expression.eq("id", "001")中的id為Employee對象中id這個屬性,注意大小寫
     
     
     
    ****************************************************************************************
     有很多預制的條件類型(Expression的子類)。有一個特別有用,可以讓你直接嵌入SQL。 

    List cats = sess.createCriteria(Cat.class)
        .add( Expression.sql("lower($alias.name) like lower(?)", "Fritz%", Hibernate.STRING) )
        .list();
    其中的{alias}是一個占位符,它將會被所查詢實體的行別名所替代.

    ************************************************************

     

     
    posted on 2008-06-24 18:21 蘆葦 閱讀(2390) 評論(0)  編輯  收藏 所屬分類: Hibernate
    主站蜘蛛池模板: 亚洲啪啪综合AV一区| 国产日韩在线视频免费播放| 国产男女爽爽爽爽爽免费视频| 国产成人亚洲精品青草天美| 免费在线观看自拍性爱视频| 日韩视频在线免费| 亚洲kkk4444在线观看| 亚洲网站免费观看| 久久丫精品国产亚洲av不卡| 免费萌白酱国产一区二区三区| 亚洲一区无码精品色| 香蕉视频免费在线| 免费一级毛片在线播放不收费| 亚洲精品久久无码av片俺去也| 啦啦啦中文在线观看电视剧免费版| 亚洲第一区视频在线观看| 色欲A∨无码蜜臀AV免费播 | 香蕉视频在线免费看| 亚洲高清成人一区二区三区| 美女18毛片免费视频| 又粗又大又长又爽免费视频| www亚洲精品久久久乳| 国产免费小视频在线观看| 亚洲日本VA午夜在线影院| 妞干网免费视频观看| 亚洲欧洲国产综合AV无码久久| 毛片基地免费观看| 亚洲欧美黑人猛交群| 美女被免费视频网站a国产| 亚洲成av人无码亚洲成av人| 国产精品免费视频网站| 国产亚洲精品欧洲在线观看| 免费jlzzjlzz在线播放视频| 免费人成视频在线播放| 国产成人亚洲影院在线观看| 国产午夜精品理论片免费观看 | 无码AV片在线观看免费| 亚洲精品午夜久久久伊人| 国产成人免费高清激情明星 | 最好2018中文免费视频| 亚洲午夜福利精品久久|