@Scheduled(cron = " 0 00 00 1 4,7,10,1 ?")//每個季度的第一天零點進行統計
此注解是每個季度結束后的下一天執行(因為Spring不識別字母(L---每月最后一天))所以只能采用下個月的第一天
以下代碼針對時間進行處理
Calendar cal = Calendar.getInstance();//當前時間
int month = cal.get(Calendar.MONTH) + 1;//當前月份
int year = cal.get(Calendar.YEAR);//當前年
int quarter=0;//當前季度
int stm = 1;//季度的起始月份
int etm = 3;//季度的結束月份
switch (month){
case 1: stm = 10; etm=12; quarter=3; year=year-1; break;//因為一月份進入方法是統計上一年第四季度的信息,所以處理年份信息
case 10: stm = 7; etm=9; quarter=2; break;//本年
case 7: stm = 4; etm=6; quarter=1; break;//本年
case 4: stm = 1; etm=3; quarter=0; break;//本年
}
最終得到 year---年份
quarter--季度
stm --起始月份
etm終止月份