⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 hqlbusiness.java

📁 本代码是在eclipse下开发hibernate的典型实例
💻 JAVA
字号:
package com.jgao.hql.test.business;

import java.io.Serializable;
import java.util.Iterator;
import java.util.List;

import net.sf.hibernate.Hibernate;
import net.sf.hibernate.HibernateException;
import net.sf.hibernate.Query;

import com.jgao.hql.test.modulebean.Gaodb;

/**
 * @author Administrator
 *
 * TODO 要更改此生成的类型注释的模板,请转至
 * 窗口 - 首选项 - Java - 代码样式 - 代码模板
 */
public class HqlBusiness extends AbstractHqlBusiness{
    private HibernateUtil hibernateUtil = new HibernateUtil();
    
    //更新对象或插入对象
    public void saveOrUpdate(Object obj) throws HibernateException{
        hibernateUtil.beginTransaction();
        Gaodb gaoobj = (Gaodb)obj;  
        List gaolist = hibernateUtil.session.find("select gao from Gaodb as gao where gao.usersname=:usersname",gaoobj.getUsersname(),Hibernate.STRING);                                              
        Gaodb tempGao = new Gaodb();
        if(gaolist.isEmpty()==true){
            tempGao.setUsersname(gaoobj.getUsersname());
            tempGao.setUserspassword(gaoobj.getUserspassword());
            hibernateUtil.session.save(tempGao);
            hibernateUtil.endTransaction();	            
        }else{
            tempGao = (Gaodb)hibernateUtil.session.find("select gao from Gaodb as gao where gao.usersname=:usersname",gaoobj.getUsersname(),Hibernate.STRING).get(0);
            tempGao.setUserspassword(gaoobj.getUserspassword());
            hibernateUtil.session.update(tempGao);
            hibernateUtil.endTransaction();	            
        }		
		System.out.println(gaoobj.getUsersname()+"'s infomation has been save or updated ok!");  
    }
 
    //更新对象
    public void update(Object obj) throws HibernateException{
        hibernateUtil.beginTransaction();
        Gaodb gaoobj = (Gaodb)obj;  
        Gaodb tempGao = (Gaodb)hibernateUtil.session.find("select gao from Gaodb as gao where gao.usersname=:usersname",gaoobj.getUsersname(),Hibernate.STRING).get(0);                                              
        tempGao.setUserspassword(gaoobj.getUserspassword());
        hibernateUtil.session.update(tempGao);
        hibernateUtil.endTransaction();			
		System.out.println(gaoobj.getUsersname()+"'s infomation has been updated ok!");       
    }
    
    //判断对象是否存在
    private boolean hasObj(Object obj) throws HibernateException
    {
        boolean flag = false;
        Gaodb gaoobj = (Gaodb)obj; 
        Query query = hibernateUtil.openSession().createQuery("from Gaodb as gao where gao.usersname=:usersname");
        query.setString("usersname",gaoobj.getUsersname());
        hibernateUtil.closeSession();
        if (query.list().size() != 0)
        {
            flag = true;
        }
        return flag;
    }
    
    //插入对象    
    public void insert(Object obj) throws HibernateException{
        if(hasObj(obj)){
            System.out.println("obj is exist, please try another username!");
        }else{
	        hibernateUtil.beginTransaction();
	        hibernateUtil.session.save(obj);
	        hibernateUtil.endTransaction();			   
			System.out.println("insert ok!");
        }
		
    }    

    //删除对象
    public void delete(Object obj) throws HibernateException{
        hibernateUtil.beginTransaction();        
        Gaodb gao = (Gaodb)obj;
        gao = (Gaodb)hibernateUtil.session.find("select gao from Gaodb as gao where gao.usersname=:usersname",gao.getUsersname(),Hibernate.STRING).get(0);        
        hibernateUtil.session.delete(gao);
        hibernateUtil.endTransaction();						    	   
        System.out.println("del ok!");       
    }
    
    //加载对象
    public Object load(Class arg0, Serializable arg1) throws HibernateException{   
        try{
            hibernateUtil.beginTransaction();
            return hibernateUtil.session.load(arg0,arg1);
        }catch(HibernateException ex){
            System.out.println("load err!");
            throw new RuntimeException("Exception building SessionFactory: " + ex.getMessage(), ex);                      
        }finally{
            hibernateUtil.endTransaction();			
        }       
    }
    
    //选择一个对象
    public Object select(Object obj) throws HibernateException{
        hibernateUtil.beginTransaction();       
        Gaodb gaoobj = (Gaodb)obj;
        gaoobj = (Gaodb)hibernateUtil.session.find("select gao from Gaodb as gao where gao.usersname=:usersname",gaoobj.getUsersname(),Hibernate.STRING).get(0);
        hibernateUtil.endTransaction();
        return gaoobj;
    }
    
    //选择一个对象
    public Object select(String usersname) throws HibernateException{
        hibernateUtil.beginTransaction();    
        Gaodb gaoobj = (Gaodb)hibernateUtil.session.find("select gao from Gaodb as gao where gao.usersname=:usersname",usersname,Hibernate.STRING).get(0);
        hibernateUtil.endTransaction();
        return gaoobj;
    }
    
    //选择相似的对象
    public List selectLike(String usersname) throws HibernateException{
        usersname = "%" + usersname + "%";
        hibernateUtil.beginTransaction();       
        List gaolist = hibernateUtil.session.find("select gao from Gaodb as gao where gao.usersname like :usersname",usersname,Hibernate.STRING);
        hibernateUtil.endTransaction();
        return gaolist;
    }

    //选择所有对象
    public List select() throws HibernateException{
        hibernateUtil.beginTransaction();
        List objlist = hibernateUtil.session.find("select gao from Gaodb as gao");     
        hibernateUtil.endTransaction();         
        return objlist;
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -