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

📄 stuinfodao.java

📁 初学着 hibernate 基本应用 基本语法, Hibernate 高级分页技术 以及分页是要注意的地方
💻 JAVA
字号:
package com.accp.dao;

import java.util.List;

import org.hibernate.Criteria;
import org.hibernate.Session;
import org.hibernate.criterion.DetachedCriteria;
import org.hibernate.criterion.Restrictions;
import org.hibernate.criterion.Order;

import com.accp.hib.HibernateSessionFactory;
import com.accp.util.*;
import com.accp.entity.*;

public class StuInfoDao extends BaseDao {
  public void insertStu(Stuinfo stu){
	  super.insertObj(stu);
  }
  public void updateStu(Stuinfo stu){
	  super.updateObj(stu);
  }
  public void deleteStu(Stuinfo stu){
	  super.deleteObj(stu);
  }
  /*
   * 使用Query查询学员数量
   * */
  public List getStuInfoCount(String hql){
	  
	  hql = "select count(stu) "+hql;
	  return super.getList(hql);
  }
  /*
   * 使用Criteria查询学员信息
   * */
 
  /*
   * 使用DetachedCriteria分页查询学员信息
   * */
  public PageUtil getStuInfo3(Stuinfo stuinfo,int curPage){
	  PageUtil pageUtil = new PageUtil();
	  
	  DetachedCriteria dcHql = getDcHql(stuinfo);
	  dcHql.addOrder(Order.asc("id"));//分页最好进行排序
	  pageUtil.setList(super.doDcHQL(dcHql,curPage,pageUtil.getPageSize()));
	  pageUtil.setTotalRows(getCountUseDcHql(getDcHql(stuinfo)));
	  pageUtil.setTotalPage();
	  
	  return  pageUtil;
  }
  
  public PageUtil getStuInfo3Date(Stuinfo stuinfo,String endDate,int curPage){
	  PageUtil pageUtil = new PageUtil();
	  
	  DetachedCriteria dcHql = getDcHqlDate(stuinfo,endDate);
	  dcHql.addOrder(Order.asc("id"));//分页最好进行排序
	  pageUtil.setList(super.doDcHQL(dcHql,curPage,pageUtil.getPageSize()));
	  pageUtil.setTotalRows(getCountUseDcHql(getDcHqlDate(stuinfo,endDate)));
	  pageUtil.setTotalPage();
	  
	  return  pageUtil;
  }
  private DetachedCriteria getDcHqlDate(Stuinfo stuinfo,String endDate){
	  DetachedCriteria dcHql = DetachedCriteria.forClass(Stuinfo.class);
	  if(!stuinfo.getName().equals("")){
		  dcHql.add(Restrictions.like("name", "%"+stuinfo.getName()+"%"));
	  }
	  if(!stuinfo.getBirthdate().equals("")){
		  dcHql.add(Restrictions.ge("birthdate", stuinfo.getBirthdate()));
		  dcHql.add(Restrictions.le("birthdate", TransTool.addOneDay(TransTool.transStr2Date(endDate))));
	  }
	  if(!stuinfo.getCity().equals("")){
		  dcHql.add(Restrictions.eq("city", stuinfo.getCity()));
	  }
	return dcHql;
  }
  
  
  private DetachedCriteria getDcHql(Stuinfo stuinfo){
	  DetachedCriteria dcHql = DetachedCriteria.forClass(Stuinfo.class);
	  if(!stuinfo.getName().equals("")){
		  dcHql.add(Restrictions.like("name", "%"+stuinfo.getName()+"%"));
	  }
	  if(!stuinfo.getBirthdate().equals("")){
		  dcHql.add(Restrictions.eq("birthdate", stuinfo.getBirthdate()));
	  }
	  if(!stuinfo.getCity().equals("")){
		  dcHql.add(Restrictions.eq("city", stuinfo.getCity()));
	  }
	return dcHql;
  }
  
}

⌨️ 快捷键说明

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