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

📄 daoadapter.java

📁 关于网上汽车销售系统的详细编程项目实战实例
💻 JAVA
字号:
package com.company.hib.dao;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

import org.apache.struts.action.ActionForm;
import org.hibernate.Query;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;

import com.company.manager.tool.PageUtil;
import com.company.struts.form.XsOrderBillSub;

public abstract class DAOAdapter extends HibernateDaoSupport implements IDAO {

	public void save(ActionForm transientInstance) {
		
		try {
			getHibernateTemplate().save(transientInstance);
			
		} catch (RuntimeException re) {
			throw re;
		}
	}

	/* (非 Javadoc)
	 * @see com.company.hib.dao.impl.IDAO#delete(org.apache.struts.action.ActionForm)
	 */
	public void delete(ActionForm persistentInstance) {
		
		try {
			getHibernateTemplate().delete(persistentInstance);
			
		} catch (RuntimeException re) {
			
			throw re;
		}
	}
	
	/* (非 Javadoc)
	 * @see com.company.hib.dao.impl.IDAO#merge(org.apache.struts.action.ActionForm)
	 */
	public void merge(ActionForm detachedInstance) {
		
		try {
			getHibernateTemplate().merge(
					detachedInstance);
				
		} catch (RuntimeException re) {
			
			throw re;
		}
	}
	
	public Map findAll(String curpage,String objectName) {
		Map map = new HashMap();
		PageUtil page= new PageUtil();
		try {
			//计算数据总条数
			String queryCountString = "select count(*) from "+objectName;
			int listcount = ((Integer)getHibernateTemplate().find(
					queryCountString).iterator().next()).intValue();
			page.setListCount(listcount);
			
			//测试curpage参数是否正确,设置正确的curpage参数
			int curpagenum=0;
			try{
				curpagenum =Integer.parseInt(curpage);
				if(curpagenum<1)curpagenum=1;
			}catch(Exception e){
				curpagenum = 1;
			}
			if((curpagenum-1)*page.getPageSize()>listcount){
				curpagenum = listcount/page.getPageSize()+1;
			}
			page.setCurpage(curpagenum);
			
			//计算从第几行开始列表,最大列多少条数据
			int firstrow = (page.getCurpage()-1)*page.getPageSize();
			String queryString = "from "+objectName;
			Query query = getHibernateTemplate().getSessionFactory()
					.getCurrentSession().createQuery(queryString);
			query.setFirstResult(firstrow);
			query.setMaxResults(page.getPageSize());
			List list = query.list();
			
			map.put("page", page);
			map.put("list", list);
			return map;
		} catch (RuntimeException re) {
			throw re;
		}
	}

	
	public List findView(java.sql.Date begin,java.sql.Date end,String cusCode, String orderCode, String contractCode,String personCode,String sellTypeCode,String quotationCode,String wareCode){
		List list=null;
		String queryString ="select a.orderDate,a.orderCode,a.buyerSigner,c.wareName,b.capitalTax,b.capitalWholeMoney,b.capConsignMoney,b.taxRate,a.contractCode,b.prepareDateoo,a.quotationCode,a.deptCode,a.personCode,a.closer,a.closeCause,a.closeDate,a.checker FROM XsOrderBillMain AS a, XsOrderBillSub AS b, GyMaterial AS c where a.orderBillMainId=b.orderBillMainId and b.wareCode = c.wareCode";
		
		if(begin!=null){
			queryString=queryString+" and a.orderDate>"+begin;
		}else{
			queryString=queryString+" and a.orderDate>'2000-01-01'";
		}
		if(end!=null){
			queryString=queryString+" and a.orderDate>"+end;
		}
		
		if(cusCode!=null){
			if(!cusCode.equals("null")){
				queryString=queryString+" and a.cusCode="+Integer.parseInt(cusCode);
			}
		}
		if(orderCode!=null){
			if(!orderCode.equals("null")){
				queryString=queryString+" and a.orderCode="+orderCode;
			}
		}
		if(contractCode!=null){
			if(!cusCode.equals("null")){
				queryString=queryString+" and a.contractCode="+contractCode;
			}
		}
		if(personCode!=null){
			if(!cusCode.equals("null")){
				queryString=queryString+" and a.personCode="+Integer.parseInt(personCode);
			}
		}
		if(sellTypeCode!=null){
			if(!cusCode.equals("null")){
				queryString=queryString+" and a.sellTypeCode="+Integer.parseInt(sellTypeCode);
			}
		}
		if(quotationCode!=null){
			if(!cusCode.equals("null")){
				queryString=queryString+" and a.quotationCode="+quotationCode;
			}
		}
		if(wareCode!=null){
			if(!wareCode.equals("null")){
				queryString=queryString+" and b.wareCode="+wareCode;
			}
		}
		
		try {
			System.out.println(queryString);
			list=getHibernateTemplate().find(queryString);
		} catch (RuntimeException re) {
			
			throw re;
		}
		return list;
	}
	public List findOrder(java.sql.Date begin,java.sql.Date end,String cusCode,String orderCode,String wareCode,String deptCode,String personCode,String sellTypeCode){
		List list=null;
		String queryString ="SELECT a.orderCode,d.deptName,e.cusName,p.personName,c.wareName,c.wareType,b.unitPrice,b.quantity,b.capitalMoney,b.capInvoiceMoney FROM XsOrderBillMain AS a, XsOrderBillSub AS b, GyMaterial AS c,GyDepartment as d,GyCustomer as e,GyPerson as p where a.orderBillMainId=b.orderBillMainId and 	b.wareCode = c.wareCode	and	a.cusCode = e.cusCode	and a.personCode = p.personCode and 	a.deptCode = d.deptCode";
		
		
		if(begin!=null){
			queryString=queryString+" and a.orderDate>"+begin;
		}
		if(end!=null){
			queryString=queryString+" and a.orderDate<"+end;
		}
		
		if(cusCode!=null){
			if(!cusCode.equals("null")){
				queryString=queryString+" and a.cusCode="+Integer.parseInt(cusCode);
			}
		}
		if(orderCode!=null){
			if(!orderCode.equals("null")){
				queryString=queryString+" and a.orderCode="+orderCode;
			}
		}
		if(wareCode!=null){
			if(!wareCode.equals("null")){
				queryString=queryString+" and a.wareCode="+wareCode;
			}
		}
		if(deptCode!=null){
			if(!deptCode.equals("null")){
				queryString=queryString+" and a.deptCode="+deptCode;
			}
		}
		if(personCode!=null){
			if(!personCode.equals("null")){
				queryString=queryString+" and a.personCode="+Integer.parseInt(personCode);
			}
		}
		if(sellTypeCode!=null){
			if(!sellTypeCode.equals("null")){
				queryString=queryString+" and a.sellTypeCode="+sellTypeCode;
			}
		}
		try {
			System.out.println(queryString);
			list=getHibernateTemplate().find(queryString);
		} catch (RuntimeException ef) {
			
			throw ef;
		}
		return list;
	}
	public List select1(String sql)
	{
		List result=getHibernateTemplate().find(sql);
		return result;
	}
	
	public XsOrderBillSub findCode(java.lang.Integer wareCode) {
		try {
			String sql="from com.company.struts.form.XsOrderBillSub where wareCode=1";
			XsOrderBillSub instance = (XsOrderBillSub)getHibernateTemplate().find(sql).get(0);
			return instance;
		} catch (RuntimeException re) {
			throw re;
		}
	}
	
//回款
	public void saveOrUpdate(ActionForm transientInstance){
		
		try{
			getHibernateTemplate().saveOrUpdate(transientInstance);
		}catch(Exception e){
			e.printStackTrace();
		}
	}
//	根据条件查询结果返回页面
	public Map find1(String curpage, String sqlStr) {
		Map map1 = new HashMap();
		PageUtil page = new PageUtil();
		List list2 = null;
		// 判断所传的参数是否有效

		try {
			// 计算数据总条数
			String queryCountString = "select count(*) from "+ sqlStr;
			int listcount = ((Integer) getHibernateTemplate().find(queryCountString).iterator().next()).intValue();
			page.setListCount(listcount);
			System.out.println("查询到的数据有:"+listcount+"行!");
			// 测试curpage参数是否正确,设置正确的curpage参数
			int curpagenum = 0;
			try {
				curpagenum = Integer.parseInt(curpage);
				if (curpagenum < 1)
					curpagenum = 1;
			} catch (Exception e) {
				curpagenum = 1;
			}
			if ((curpagenum - 1) * page.getPageSize() > listcount) {
				curpagenum = listcount / page.getPageSize() + 1;
			}
			page.setCurpage(curpagenum);

			// 计算从第几行开始列表,最大列多少条数据
			int firstrow = (page.getCurpage() - 1) * page.getPageSize();
			 String queryString = "from  "+sqlStr;
			 System.out.println(queryString);
			 Query query = getHibernateTemplate().getSessionFactory().getCurrentSession().createQuery(queryString);
//			 Query query =  (Query) getHibernateTemplate().find(queryString).iterator().next();
			 query.setFirstResult(firstrow);
			 query.setMaxResults(page.getPageSize());
			 list2 = query.list();
		} catch (Exception ex) {
			ex.printStackTrace();
			System.out.println("DAO中方法find1抛出异常:" + ex.getMessage());
		}
		map1.put("page", page);
		map1.put("list2", list2);
		return map1;

	}
	
	
	public List finddata(String sql){
		List list=null;
		System.out.println("jin ru finddata zhong");
		try{
			this.getHibernateTemplate().find(sql);
		}catch(Exception e){
			System.out.println("finddata方法中");
			e.printStackTrace();
		}
		System.out.println("111:"+list.size());
		return list;
	}
	
	
}

⌨️ 快捷键说明

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