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

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

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

    隨筆 - 7  文章 - 3  trackbacks - 0
    <2011年12月>
    27282930123
    45678910
    11121314151617
    18192021222324
    25262728293031
    1234567

    常用鏈接

    留言簿

    隨筆檔案

    文章分類

    文章檔案

    搜索

    •  

    最新評(píng)論

    閱讀排行榜

    評(píng)論排行榜

    通用的增刪該查工具類  可在dao層 new一個(gè)
    CommonCrudUtil(本類)實(shí)例  實(shí)現(xiàn)對(duì)數(shù)據(jù)的增刪改查




    package com.XXXXX.util;

    import java.io.Serializable;
    import java.util.ArrayList;
    import java.util.List;
    import org.hibernate.*;
    /**
     * 通用增刪改查工具類
     * @author 王代軍
     * @since Dec 19,2011
     * @version 1.0
     */
    @SuppressWarnings("unchecked")
    public class CommonCrudUtil<T> {
        /**
         * 添加功能
         * @param obj 要保存的對(duì)象
         */
        public boolean create(Object obj){
            Session session=HibernateSessionFactory.getSession();
            Transaction tx=null;
            boolean flag=false;
            try{
                tx=session.beginTransaction();
                session.persist(obj);
                tx.commit();
                flag=true;
            }catch(Exception e){
                e.printStackTrace();
                if(tx!=null){        
                    tx.rollback();
                }
            }finally{
                session.close();
            }    
            return flag;
        }
        /**
         * 查詢功能
         * @param clazz 要查詢對(duì)象的類型  obj 要查詢的對(duì)象的 可序列化的字段 (本設(shè)計(jì)指主鍵 id)
         */
        public Object retrieve(Class clazz,Object obj){
            Session session=HibernateSessionFactory.getSession();
            Transaction tx=null;
            try{
                tx=session.beginTransaction();
                Object object=session.get(clazz,(Serializable) obj);
                tx.commit();
                return object;
            }catch(Exception e){
                e.printStackTrace();
                if(tx!=null){        
                    tx.rollback();
                }
                return null;
            }finally{
                session.close();
            }        
        }    
        /**
         * 查詢?nèi)抗δ?br />     * @param clazz 要查詢的對(duì)象的類型
         */
        public List<T> retrieve(Class clazz){
            Session session=HibernateSessionFactory.getSession();
            List<T> list=new ArrayList<T>();
            Transaction tx=null;
            try{
                tx=session.beginTransaction();
                Criteria cr=session.createCriteria(clazz);
                list=cr.list();
                tx.commit();
                return list;
            }catch(Exception e){
                e.printStackTrace();
                if(tx!=null){            
                    tx.rollback();
                }
                return null;
            }finally{
                session.close();
            }
        }
        /**
         * 更新功能
         * @param obj 要更新的對(duì)象
         */
        public boolean update(Object obj){
            Session session=HibernateSessionFactory.getSession();
            boolean flag=false;
            Transaction tx=null;
            try{
                tx=session.beginTransaction();
                session.update(obj);
                tx.commit();
                flag=true;
            }catch(Exception e){
                e.printStackTrace();
                if(tx!=null){            
                    tx.rollback();
                }
            }finally{
                session.close();
            }
            return flag;
        }
        /**
         * 刪除功能
         * @param clazz 要?jiǎng)h除的對(duì)象的類型 obj 要?jiǎng)h除的對(duì)象的 唯一標(biāo)識(shí)(可序列化)字段 (指主鍵 id)
         */
        public boolean delete(Class clazz,Object obj){
            Session session=HibernateSessionFactory.getSession();
            Transaction tx=null;
            boolean flag=false;
            try{
                tx=session.beginTransaction();
                Object object=session.get(clazz,(Serializable) obj);
                session.delete(object);
                tx.commit();
                flag=true;
            }catch(Exception e){
                e.printStackTrace();
                if(tx!=null){        
                    tx.rollback();
                }
            }finally{
                session.close();
            }    
            return flag;
        }
        
    }



    調(diào)用實(shí)現(xiàn)   dao層的實(shí)現(xiàn)類調(diào)用 
       CommonCrudUtil  的方法實(shí)現(xiàn)增刪改查

    import java.util.Date;
    import java.util.List;

    import org.hibernate.Query;
    import com.zhongyou.bean.IDCard;
    import com.zhongyou.util.CommonCrudUtil;

    public class IDCardDaoImpl implements IDCardDaoIf {

        
         CommonCrudUtil crud=new CommonCrudUtil<IDCard>();
       
         public int addInformation(IDCard card) {

         IDCard card=new IDCard();
         card.setId(16);
         card.setName("xiaoxiao");
         card.setAddress("xiaoxiao");
         card.setBirthday(new Date());
         card.setNumber("29472398734");
         card.setSex("男");


         crud.create(card);//增加.......

    }
     
         。。。。。。查詢。。。。。
         crud.retrieve(IDCard.class,3);
        。。。。。。查詢?nèi)俊!!!!?br />
         crud.retrieve(IDCard.class);

        。。。。。。修改。。。。
         crud.update(card);
        。。。。。。刪除。。。。
         crud.delete(IDCard.class,3);
    。。。。。。。。。



    寫的簡(jiǎn)陋些  只是些想法可借鑒而已 同志們 可以自己完善。。。。




    posted on 2011-12-26 13:22 Tomas 閱讀(2006) 評(píng)論(1)  編輯  收藏

    FeedBack:
    # re: hibernate 通用的增該查 工具類 供Dao層使用 2011-12-29 12:49 SwiftDAO
    我也做過了一個(gè):SwiftDAO
    http://code.google.com/p/swiftdao
    一起交流  回復(fù)  更多評(píng)論
      

    只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 久久美女网站免费| baoyu122.永久免费视频| 久久精品a一国产成人免费网站| 亚洲爆乳无码一区二区三区| 黄色视屏在线免费播放| 国产gv天堂亚洲国产gv刚刚碰| 一区二区视频免费观看| 精品国产亚洲一区二区三区| 日本三级在线观看免费| 婷婷精品国产亚洲AV麻豆不片| 成人免费福利视频| 亚洲成年人电影在线观看| 最新欧洲大片免费在线| 亚洲乱码av中文一区二区| 凹凸精品视频分类国产品免费| 特级毛片爽www免费版| 亚洲午夜久久久久久噜噜噜| a毛看片免费观看视频| 亚洲视频精品在线观看| 永久免费毛片在线播放| 黄色三级三级三级免费看| 中文字幕亚洲图片| 91短视频免费在线观看| 亚洲精品又粗又大又爽A片| 亚洲精品一级无码中文字幕| a毛片久久免费观看| 久久亚洲精品无码VA大香大香| 欧美好看的免费电影在线观看| 男女啪啪免费体验区| 日产亚洲一区二区三区| 成人免费男女视频网站慢动作| 国产亚洲成在线播放va| 97无码免费人妻超级碰碰碰碰 | 亚洲国产系列一区二区三区| 国产三级电影免费观看| 青柠影视在线观看免费| 狠狠色香婷婷久久亚洲精品| 亚洲精品国产电影| 久视频精品免费观看99| 特级毛片在线大全免费播放| 亚洲码在线中文在线观看|