zoukankan      html  css  js  c++  java
  • struts+hibernate+oracle+easyui实现lazyout组件的简单案例——EmpDao层代码

       严格按照三层架构来写的,Dao层的代码比较少,我直接把Emp和实现类的都放在这篇文章里面吧,

    IEmpDao.java接口:


     /**  
    * @Title: IEmpDao.java
    * @Package org.dao
    * @Description: TODO该方法的主要作用:
    * @author A18ccms A18ccms_gmail_com  
    * @date 2017-4-19 下午6:36:43
    * @version V1.0  
    */
    package org.dao;
    
    import org.entity.Emp;
    import org.entity.EmpCondition;
    import org.util.pageUtil;
    
     /**   
     *    
     * 项目名称:struts_easyui   
     * 类名称:IEmpDao   
     * 类描述:   员工的接口
     * 创建人:Mu Xiongxiong  
     * 创建时间:2017-4-19 下午6:36:43   
     * 修改人:Mu Xiongxiong   
     * 修改时间:2017-4-19 下午6:36:43   
     * 修改备注:   
     * @version    
     *    
     */
    public interface IEmpDao {
    	//动态分页查询(根据部门编号,员工的名)
    	//获取记录数
    	//获取员工信息方法
    	pageUtil<Emp> getEmpByPage(int pageIndex,int pageSize,EmpCondition empc);
    
    }
    

    IEmpDao的实现类——EmpDaoImpl

     /**  
    * @Title: EmpDaoImpl.java
    * @Package org.dao.impl
    * @Description: TODO该方法的主要作用:
    * @author A18ccms A18ccms_gmail_com  
    * @date 2017-4-19 下午7:15:46
    * @version V1.0  
    */
    package org.dao.impl;
    
    import org.dao.IEmpDao;
    import org.entity.Emp;
    import org.entity.EmpCondition;
    import org.hibernate.Criteria;
    import org.hibernate.criterion.MatchMode;
    import org.hibernate.criterion.Projection;
    import org.hibernate.criterion.Projections;
    import org.hibernate.criterion.Restrictions;
    import org.hibernate.impl.CriteriaImpl;
    import org.util.HibernateUtil;
    import org.util.pageUtil;
    
     /**   
     *    
     * 项目名称:struts_easyui   
     * 类名称:EmpDaoImpl   
     * 类描述:   
     * 创建人:Mu Xiongxiong  
     * 创建时间:2017-4-19 下午7:15:46   
     * 修改人:Mu Xiongxiong   
     * 修改时间:2017-4-19 下午7:15:46   
     * 修改备注:   
     * @version    
     *    
     */
    public class EmpDaoImpl implements IEmpDao {
    
    	/**(非 Javadoc)
    	 * <p>Title: getEmpByPage</p>
    	 * <p>Description(描述): </p>
    	 * @param pageIndex
    	 * @param pageSize
    	 * @param empc
    	 * @return
    	 * @see org.dao.IEmpDao#getEmpByPage(int, int, org.entity.EmpCondition)
    	 */
    
    	@Override
    	public pageUtil<Emp> getEmpByPage(int pageIndex, int pageSize,
    			EmpCondition empc) {
    		pageUtil<Emp> pageUtil=new pageUtil<Emp>();
    		Criteria cri = HibernateUtil.getSession().createCriteria(Emp.class);
    		if(empc.getDept()!=null){
    			cri.add(Restrictions.eq("dept",empc.getDept()));       //按部门编号比较
    		}
    		if(empc.getEmpName()!=null){
    			//根据名字模糊查询
    			cri.add(Restrictions.ilike("ename", empc.getEmpName(),MatchMode.ANYWHERE));  
    		}
    		pageUtil.setPageIndex(pageIndex);
    		pageUtil.setPageSize(pageSize);
    		CriteriaImpl cirImp= (CriteriaImpl) cri; 
    		
    		Projection pro= cirImp.getProjection();//保存投影
    		//查询总记录数
    		cri.setProjection(Projections.rowCount());
    		pageUtil.setTotalCount((Integer)cri.uniqueResult());
    		//员工信息
    		cri.setProjection(pro);
    		//分页设置
    		cri.setFirstResult((pageIndex-1)*pageSize);
    		cri.setMaxResults(pageSize);
    		pageUtil.setList(cri.list());
    		return pageUtil;
    	}
    
    }
    


  • 相关阅读:
    121. Best Time to Buy and Sell Stock
    70. Climbing Stairs
    647. Palindromic Substrings
    609. Find Duplicate File in System
    583. Delete Operation for Two Strings
    556 Next Greater Element III
    553. Optimal Division
    539. Minimum Time Difference
    537. Complex Number Multiplication
    227. Basic Calculator II
  • 原文地址:https://www.cnblogs.com/a1111/p/12816288.html
Copyright © 2011-2022 走看看