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

📄 basedao.java

📁 用于银行全面掌控公司及各个部门的员工信息与设备资料
💻 JAVA
字号:
package com.bank.hibernate.factory;

import java.util.List;

import org.hibernate.Criteria;
import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.criterion.Example;

public class BaseDAO extends HibernateDB{
	
	
	public void insert(Object ob){
		Session session=this.getSession();
		session.save(ob);
		session.beginTransaction().commit();
		this.closeSession(session);
	}
	
	public Object findByKey(String className,String keyName,String keyValue){//
		Session session=this.getSession();
		Query query=this.getSession().createQuery("from "+className+" where "+keyName+"=?");
		query.setString(0, keyValue);
		List list=query.list();
		session.beginTransaction().commit();
		this.closeSession(session);
		if(list.size()>0 && list!=null){
			return list.get(0);
		}
		return null;
	}
	
	public Object findByKey(String className,String keyName,int keyValue,String keyNames,int keyValues){//
		Session session=this.getSession();
		Query query=this.getSession().createQuery("from "+className+" where "+keyName+">? and "+ keyNames +"<?");
		List list=query.list();
		session.beginTransaction().commit();
		this.closeSession(session);
		if(list.size()>0 && list!=null){
			return list.get(0);
		}
		return null;
	}
	
	public Object findByKey(String className,String keyName,int keyValue){//
		Session session=this.getSession();
		Query query=this.getSession().createQuery("from "+className+" where "+keyName+"=?");
		query.setInteger(0, keyValue);
		List list=query.list();
		session.beginTransaction().commit();
		this.closeSession(session);
		if(list.size()>0 && list!=null){
			return list.get(0);
		}
		return null;
	}
	
	public void update(Object ob){
		Session session=this.getSession();
		session.update(ob);
		session.beginTransaction().commit();
		this.closeSession(session);
	}
	
	public void delete(String className,String keyName,String keyValue){
		Session session=this.getSession();
		Query query=this.getSession().createQuery("delete from "+className+" where "+keyName+"="+keyValue);
		query.executeUpdate();
		session.beginTransaction().commit();
		this.closeSession(session);
	}
	
	public void delete(String className,String keyName,String[] keyValue){
		Session session=this.getSession();
		for(int i=0;i<keyValue.length;i++){
			Query query=session.createQuery("delete from "+className+" where "+keyName+"="+keyValue[i]);
			query.executeUpdate();
		}
		this.getSession().beginTransaction().commit();
		this.closeSession(this.getSession());
	}
	
	public void delete(Object entity){
		Session session=this.getSession();
		session.delete(entity);
		session.beginTransaction().commit();
		this.closeSession(session);
	}
	
	public List findAll(Class clazz,Object entity){
		List list=null;
		Criteria criteria=this.getSession().createCriteria(clazz);
		criteria.add(Example.create(entity));
		list=criteria.list();
		return list;
	}
	
	public List findAll(String className,int pageNo,int perPageCount){
		List list=null;
		Query query=this.getSession().createQuery("from "+className);
		int beginIndex=(pageNo-1)*perPageCount;
		query.setFirstResult(beginIndex);
		query.setMaxResults(perPageCount);
		list=query.list();
		return list;
	}
	
	public List findAll(String className){
		List list=null;
		Query query=this.getSession().createQuery("from "+className);
		list=query.list();
		return list;
	}
	
	public int getTatalCount(String className){
			Query query=this.getSession().createQuery("from "+className);
			List list=query.list();
			this.closeSession(this.getSession());
			return list.size();
	}
	
	public List findByProperties(String sql){
		
		List list=null;
		Query query=this.getSession().createQuery(sql);
		list = query.list();
		this.closeSession(this.getSession());
		
		return list;
	}
	
}

⌨️ 快捷键说明

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