📄 basedatedaoimpl.java
字号:
package com.wondersgroup.basemodule.holidaymanage.dao.impl;
import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.Date;
import java.sql.SQLException;
import java.util.List;
import org.hibernate.Criteria;
import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.criterion.Expression;
import com.sofmit.tools.LogFactory;
import com.wondersgroup.basemodule.holidaymanage.bo.BaseDateBO;
import com.wondersgroup.basemodule.holidaymanage.dao.BaseDateDAO;
import com.wondersgroup.framework.core.dao.impl.AbstractHibernateDAOImpl;
public class BaseDateDAOImpl extends AbstractHibernateDAOImpl implements
BaseDateDAO {
private List list;
private Date date;
public Class getEntityClass(){
return BaseDateBO.class;
}
public BaseDateBO getBaseDateBOByDate(Date date){
Session session = getSession();
Criteria criteria = session.createCriteria(getEntityClass());
criteria.add(Expression.eq("dateDay",date));
criteria.add(Expression.eq("removed",Integer.valueOf(0)));
list = criteria.list();
if(list.size()>0){
return (BaseDateBO)list.get(0);
}
return null;
}
/*
* 调用批量年度新增的存储过程
*
*/
public int createYearDateDay(String year,java.sql.Date date){
LogFactory.getNewInstance(this.getClass()).info("~~~~~~~~~~~~~~~~~~~~~~~````");
Connection conn = this.getHibernateTemplate().getSessionFactory().
getCurrentSession().connection();
String sql = "{call DB2ADMIN.CREATEYEAR(?,?,?)}";
int arg = 0;
try{
CallableStatement stmt= conn.prepareCall(sql);
stmt.setString(1, year);
stmt.setDate(2, date);
stmt.registerOutParameter(3, java.sql.Types.BIGINT);
stmt.execute();
arg = stmt.getInt(3);
}catch(SQLException e){
e.printStackTrace();
}finally{
try {
if(!conn.isClosed())
conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
return arg;
}
/*
* 产生月日历
*/
public List getMonthDate(int year,int month){
Session session = getSession();
date = new Date(year,month,0);
Query query = session.createQuery
("from BaseDateBO c where c.dateDay > :firstdate and c.dateDay < :lastdate and c.removed = 0");
query.setDate("firstdate", new Date(year-1900,month,0));
if(month == 11)query.setDate("lastdate", new Date(year-1899,0,1));
else query.setDate("lastdate", new Date(year-1900,month+1,1));
System.out.println(new Date(year-1900,month,0));
System.out.println(new Date(year-1899,0,1));
System.out.println(query.list().size());
return query.list();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -