protected List getYears(Long userno,String end)throws Exception{
List returnList=new ArrayList();
// 获取年份 (根据当前人员编号和发布日程、日志最早时间获取年份列表)
List cjsjSch=this.getBaseBiz().getSchHasYear(userno,end);//cjsjSch集合中存放的数据是Date型的
List cjsjLog=this.getBaseBiz().getLogHasYear(userno,end);
// 循环获取有日程的年份
for(int i=0;i<cjsjSch.size();i++){
Date sj= (Date) cjsjSch.get(i);//cjsjSch集合中使用get(int index)方法返回的对象是Object类型的,需要强制转换
String sj_strString=DateUtils.dateToStr(sj);//将Date型转换为String型
returnList.add(sj_strString.substring(0, 4));
}
// 循环获取有日志的年份
for(int j=0;j<cjsjLog.size();j++){
Date sj=(Date)cjsjLog.get(j);
String sj_strString=DateUtils.dateToStr(sj);
returnList.add(sj_strString.substring(0, 4));
}
// 去除重复年份
returnList=remo(returnList);
// 升序排列
Collections.sort(returnList);
// 降序排序
Collections.reverse(returnList);
return returnList;
}
短时间格式字符串和短时间格式时间 之间的转换
/**
* 将短时间格式时间转换为字符串 yyyy-MM-dd
*
* @param dateDate
* @param k
* @return
*/
public static String dateToStr(java.util.Date dateDate) {
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
String dateString = formatter.format(dateDate);
return dateString;
}
/**
* 将短时间格式字符串转换为时间 yyyy-MM-dd
*
* @param strDate
* @return
*/
public static Date strToDate(String strDate) {
if (strDate == null) {
return null;
}
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
ParsePosition pos = new ParsePosition(0);
Date strtodate = formatter.parse(strDate, pos);
return strtodate;
}
/**
* 将短时间格式字符串转换为时间 yyyy
*
* @param strDate
* @return
*/
public static Date strToDateYYYY(String strDate) {
if (strDate == null) {
return null;
}
SimpleDateFormat formatter = new SimpleDateFormat("yyyy");
ParsePosition pos = new ParsePosition(0);
Date strtodate = formatter.parse(strDate, pos);
return strtodate;
}