1.传入的结束时间+n个月
//传入的结束时间+n个月
Calendarcalendar=Calendar.getInstance();
calendar.setTime(regAndSetlDTO.getEndtime());
calendar.add(calendar.MONTH,n);
Dateendtime=calendar.getTime();
2.sql类型转换 String->int
WHERE CAST(BEGN_YM AS INT) > CAST(#{begnYm} AS INT)
3.格式化时间(yyyy-MM-dd)
//格式化时间("yyyy-MM-dd") date->date
begntime=java.sql.Date.valueOf(new Date().toInstant().atZone(ZoneId.systemDefault()).toLocalDate());
//格式化时间 date->string->date
public Date formatDate(Date date) throws Exception{
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
Date date1 = simpleDateFormat.parse(simpleDateFormat.format(date));
return date1;
}
4.获取季度第一天
/**
*@Description:获取季度第一天
**/
public static Calendar getQuarterStart(Date date){
Calendar startCalendar = Calendar.getInstance();
startCalendar.setTime(date);
startCalendar.set(Calendar.MONTH,(((int)startCalendar.get(Calendar.MONTH))/3)*3);
startCalendar.set(Calendar.DAY_OF_MONTH,1);
return startCalendar;
}
5.获取季度最后一天
/**
*@Description:获取季度最后一天
**/
public static Calendar getQuarterEnd(Date date){//季度结束
Calendar endCalendar = Calendar.getInstance();
endCalendar.setTime(date);
endCalendar.set(Calendar.MONTH,(((int)endCalendar.get(Calendar.MONTH))/3)*3+2);
endCalendar.set(Calendar.DAY_OF_MONTH,
endCalendar.getActualMaximum(Calendar.DAY_OF_MONTH));
return endCalendar;
}
6.判断传入日期在第几季度
/**
*
*01第一季度02第二季度03第三季度04第四季度
*
*@paramdate
*@return
*/
public static String getSeason(Date date){
String season = '01';//季度
Calendarc = Calendar.getInstance();
c.setTime(date);
int month=c.get(Calendar.MONTH);
switch(month){
case Calendar.JANUARY:
case Calendar.FEBRUARY:
case Calendar.MARCH:
season = "01";
break;
case Calendar.APRIL:
case Calendar.MAY:
case Calendar.JUNE:
season = "02";
break;
case Calendar.JULY:
case Calendar.AUGUST:
case Calendar.SEPTEMBER:
season = "03";
break;
case Calendar.OCTOBER:
case Calendar.NOVEMBER:
case Calendar.DECEMBER:
season = "04";
break;
default:
break;
}
return season;
}