| 
					
				 | 
			
			
				@@ -0,0 +1,596 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+package com.gree.mall.contest.utils; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import java.text.DateFormat; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import java.text.ParseException; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import java.text.SimpleDateFormat; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import java.util.*; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+public class DateUtils { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public static Date parseDate(String date) throws ParseException { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return sdf.parse(date); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public static Date parseDate1(String date) throws ParseException { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return sdf.parse(date); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public static Date parseDate3(String date) throws ParseException { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return sdf.parse(date); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public static Date parseDate2(String date) throws ParseException { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return sdf.parse(date); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public static String formatDate(Date date) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        try { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            return sdf.format(date); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }catch(Exception e){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            return ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public static String formatDate1(Date date) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return sdf.format(date); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public static String formatDateHm(Date date) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        SimpleDateFormat sdf = new SimpleDateFormat("HH:mm"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return sdf.format(date); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public static String formatDateByCl(Date date) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return sdf.format(date); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public static String formatDate2(Date date) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        SimpleDateFormat sdf = new SimpleDateFormat("MM-dd"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return sdf.format(date); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public static String formatDate3(Date date) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return sdf.format(date); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /* 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 获取当前时间天数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public static Date getTimeByDay(Integer day) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Calendar c = Calendar.getInstance(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        c.add(Calendar.DATE, day); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        c.set(Calendar.HOUR_OF_DAY, 23); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        c.set(Calendar.MINUTE, 59); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        c.set(Calendar.SECOND, 59); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        c.set(Calendar.MILLISECOND, 0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return c.getTime(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /* 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 获取当前时间天数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public static Date getTimeByMin(Date dt,Integer min) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Calendar rightNow = Calendar.getInstance(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        rightNow.setTime(dt); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        rightNow.add(Calendar.MINUTE, min); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Date dt1 = rightNow.getTime(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return dt1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public static String getTimeByMonth(Date dt,Integer month) throws ParseException { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Calendar rightNow = Calendar.getInstance(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        rightNow.setTime(dt); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        rightNow.add(Calendar.MONTH, month); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Date dt1 = rightNow.getTime(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        String reStr = sdf.format(dt1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return reStr; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 获取本月第一天的开始时间 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public static Date getStartMonth() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Calendar calendar = Calendar.getInstance(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Date theDate = calendar.getTime(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        GregorianCalendar gcLast = (GregorianCalendar) Calendar.getInstance(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        gcLast.setTime(theDate); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        //设置为第一天 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        gcLast.set(Calendar.DAY_OF_MONTH, 1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        gcLast.set(Calendar.HOUR_OF_DAY, 0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        gcLast.set(Calendar.MINUTE, 0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        gcLast.set(Calendar.SECOND, 0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        gcLast.set(Calendar.MILLISECOND, 0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        //     String day_first=sf.format(gcLast.getTime()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        //打印本月第一天 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        //     System.out.println(day_first); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return gcLast.getTime(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 获取本月的最后一天的结束时间 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public static Date getEndMonth() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Calendar calendar = Calendar.getInstance(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        calendar.set(Calendar.DAY_OF_MONTH, calendar.getActualMaximum(Calendar.DAY_OF_MONTH)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        calendar.set(Calendar.HOUR_OF_DAY, 23); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        calendar.set(Calendar.MINUTE, 59); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        calendar.set(Calendar.SECOND, 59); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        calendar.set(Calendar.MILLISECOND, 999); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return calendar.getTime(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 获取当前的开始时间 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public static Date getStartTime() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Calendar todayStart = Calendar.getInstance(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        todayStart.set(Calendar.HOUR_OF_DAY, 0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        todayStart.set(Calendar.MINUTE, 0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        todayStart.set(Calendar.SECOND, 0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        todayStart.set(Calendar.MILLISECOND, 0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return todayStart.getTime(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public static Date getStartTimeByDay(int day) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Calendar todayStart = Calendar.getInstance(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        todayStart.add(Calendar.DAY_OF_MONTH,day); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        todayStart.set(Calendar.HOUR_OF_DAY, 0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        todayStart.set(Calendar.MINUTE, 0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        todayStart.set(Calendar.SECOND, 0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        todayStart.set(Calendar.MILLISECOND, 0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return todayStart.getTime(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 获取当前的结束时间 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public static Date getEndTime() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Calendar todayEnd = Calendar.getInstance(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        todayEnd.set(Calendar.HOUR_OF_DAY, 23); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        todayEnd.set(Calendar.MINUTE, 59); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        todayEnd.set(Calendar.SECOND, 59); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        todayEnd.set(Calendar.MILLISECOND, 999); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return todayEnd.getTime(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public static Date getEndTimeByDay(int num) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Calendar todayEnd = Calendar.getInstance(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        todayEnd.add(Calendar.DAY_OF_MONTH,num); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        todayEnd.set(Calendar.HOUR_OF_DAY, 23); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        todayEnd.set(Calendar.MINUTE, 59); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        todayEnd.set(Calendar.SECOND, 59); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        todayEnd.set(Calendar.MILLISECOND, 999); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return todayEnd.getTime(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 获取昨天的开始时间 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public static Date getBeginDayOfYesterday() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Calendar cal = new GregorianCalendar(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        cal.setTime(getStartTime()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        cal.add(Calendar.DAY_OF_MONTH, -1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return cal.getTime(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 获取昨天的结束时间 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public static Date getEndDayOfYesterDay() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Calendar cal = new GregorianCalendar(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        cal.setTime(getEndTime()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        cal.add(Calendar.DAY_OF_MONTH, -1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return cal.getTime(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 日期转周几 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * @param datetime 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public static String dateToWeek(String datetime) throws ParseException { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Date parse = sdf.parse(datetime); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return dateToWeek(parse); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 日期转周几 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * @param datetime 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public static int dateToWeek1(String datetime) throws ParseException { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Date parse = sdf.parse(datetime); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return dateToWeek1(parse); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 日期转周几 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * @param datetime 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public static String dateToWeek(Date datetime) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        String[] weekDays = {"周日", "周一", "周二", "周三", "周四", "周五", "周六"}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Calendar cal = Calendar.getInstance(); // 获得一个日历 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        cal.setTime(datetime); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        int w = cal.get(Calendar.DAY_OF_WEEK) - 1; // 指示一个星期中的某天。 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (w < 0) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            w = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return weekDays[w]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 日期转周几 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * @param datetime 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public static int dateToWeek1(Date datetime) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Calendar cal = Calendar.getInstance(); // 获得一个日历 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        cal.setTime(datetime); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        int w = cal.get(Calendar.DAY_OF_WEEK); // 指示一个星期中的某天。 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (w < 0) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            w = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return w; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 获取前5分钟的时间 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public static Date getBefore5Minute(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Calendar beforeTime = Calendar.getInstance(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        beforeTime.add(Calendar.MINUTE, -5);// 5分钟之前的时间 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Date beforeD = beforeTime.getTime(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return beforeD; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 获取前一小时的开始时间 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public static Date getStartHour() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        String date = format.format(new Date()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Calendar c = Calendar.getInstance(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        String hour = String.valueOf(c.get(Calendar.HOUR_OF_DAY) - 1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        String startTime = date + " " + hour + ":00:00"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Date data = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        try { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            data = sdf.parse(startTime); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } catch (ParseException e) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            e.printStackTrace(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return data; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 获取前一小时的结束时间 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public static Date getEndHour() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        String date = format.format(new Date()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Calendar c = Calendar.getInstance(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        String hour = String.valueOf(c.get(Calendar.HOUR_OF_DAY) - 1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        String endTime = date + " " + hour + ":59:59"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Date data = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        try { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            data = sdf.parse(endTime); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } catch (ParseException e) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            e.printStackTrace(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return data; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 获取上个月的开始时间 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public static Date getStartLastMonth() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Calendar c = Calendar.getInstance(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        c.set(Calendar.MONTH, c.get(Calendar.MONTH) - 1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        c.set(Calendar.DAY_OF_MONTH, 1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        c.set(Calendar.HOUR_OF_DAY, 0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        c.set(Calendar.MINUTE, 0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        c.set(Calendar.SECOND, 0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        c.set(Calendar.MILLISECOND, 0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return c.getTime(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 获取上个月的结束时间 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public static Date getEndLastMonth() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Calendar calendar = Calendar.getInstance(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        calendar.add(Calendar.MONTH, -1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        calendar.set(Calendar.DATE, calendar.getActualMaximum(Calendar.DATE)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        calendar.set(Calendar.HOUR_OF_DAY, 23); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        calendar.set(Calendar.MINUTE, 59); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        calendar.set(Calendar.SECOND, 59); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        calendar.set(Calendar.MILLISECOND, 999); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return calendar.getTime(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 获取近七天的开始时间 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public static Date geStartSevenDays() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        //    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Calendar c = Calendar.getInstance(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        c.add(Calendar.DATE, -7); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        c.set(Calendar.HOUR_OF_DAY, 0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        c.set(Calendar.MINUTE, 0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        c.set(Calendar.SECOND, 0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        c.set(Calendar.MILLISECOND, 0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        //      Date monday = c.getTime(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        //       String preMonday = sdf.format(monday); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return c.getTime(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 获取近七天的结束时间 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public static Date getEndSevenDays() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Calendar cal = new GregorianCalendar(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        cal.setTime(getEndTime()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        cal.add(Calendar.DAY_OF_MONTH, -1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return cal.getTime(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 获取每个月的天数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public static int getDaysOfMonth(Date date) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Calendar calendar = Calendar.getInstance(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        calendar.setTime(date); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return calendar.getActualMaximum(Calendar.DAY_OF_MONTH); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 获取前天开始时间 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public static Date getStartTakeDay() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Calendar cal = new GregorianCalendar(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        cal.setTime(getBeginDayOfYesterday()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        cal.add(Calendar.DAY_OF_MONTH, -1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return cal.getTime(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 获取前天结束时间 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public static Date getEndTakeDay() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Calendar cal = new GregorianCalendar(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        cal.setTime(getEndDayOfYesterDay()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        cal.add(Calendar.DAY_OF_MONTH, -1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return cal.getTime(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 根据身份编号获取年龄 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * @param birthDay yyyy-MM-dd 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * @return 年龄 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public static int getAgeByDate(String birthDay) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        String year = birthDay.substring(0, 4); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Calendar cal = Calendar.getInstance(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        int iCurrYear = cal.get(Calendar.YEAR); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        int iAge = iCurrYear - Integer.valueOf(year); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return iAge; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 当前日期加上天数后的日期 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * @param num 为增加的天数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public static String DateAddDay(int num) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Calendar ca = Calendar.getInstance(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        // num为增加的天数,可以改变的 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        ca.add(Calendar.DATE, num); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Date d = ca.getTime(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        String enddate = format.format(d); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return enddate; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /* 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    判读时间差距,两个时间相差多少天,时,分,秒 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public static Long getDay(String date) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Long days = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        try { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            Date currentTime = dateFormat.parse(dateFormat.format(new Date()));//现在系统当前时间 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            Date pastTime = dateFormat.parse(date);//过去时间 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            long diff = currentTime.getTime() - pastTime.getTime(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            days = diff / (1000 * 60 * 60 * 24); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } catch (ParseException e) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            e.printStackTrace(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return days; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 通过时间秒毫秒数判断两个时间的间隔 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public static int differentDaysByMillisecond(String date2) throws ParseException { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        date2 = date2+" 00:00:00"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        SimpleDateFormat format1 = new SimpleDateFormat("yyyy-MM-dd"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Date newDate = new Date(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        String date1 = format1.format(newDate)+" 00:00:00"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        int days = (int) ((format.parse(date2).getTime() - format.parse(date1).getTime()) / (1000*3600*24)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return days; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 计算时间 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * @param startTime : 开始时间 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * @param endTime  : 结束时间 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public static int DateSubOfDay(Date startTime,Date endTime) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Long l = 0L; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        long ts = startTime.getTime(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        long ts1 = endTime.getTime(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        l = (ts - ts1) / (1000 * 60 * 60 * 24); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return l.intValue(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 计算 时间 + 几天  或者 - 几天 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * @param date 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * @param dayNum 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public static Date getTimeByDay(Date date,int dayNum) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Calendar calendar = Calendar.getInstance(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        calendar.setTime(date); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        calendar.add(Calendar.DAY_OF_MONTH, dayNum); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        date = calendar.getTime(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return date; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 计算 时间 + 几年  或者 - 几年 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * @param date 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * @param year 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public static Date getTimeByYear(Date date,int year) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Calendar calendar = Calendar.getInstance(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        calendar.setTime(date); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        calendar.add(Calendar.YEAR, year);//+1今天的时间加一天 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        date = calendar.getTime(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return date; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 返回今天是周几,星期天等于1,星期一等于2.....星期六等于7 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public static int getWeekDay(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Calendar calendar = Calendar.getInstance(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        int day = calendar.get(Calendar.DAY_OF_WEEK); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return day; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 获取两个时间中的每一天,不包括结束时间 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * @param bigtimeStr 开始时间 yyyy-MM-dd 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * @param endTimeStr 结束时间 yyyy-MM-dd 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * @throws ParseException 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public static List<String> getFormatDays(String bigtimeStr, String endTimeStr) throws ParseException { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Date bigtime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(bigtimeStr + " 00:00:00"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Date endtime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(endTimeStr + " 00:00:00"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        //定义一个接受时间的集合 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        List<Date> lDate = new ArrayList<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        lDate.add(bigtime); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Calendar calBegin = Calendar.getInstance(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        // 使用给定的 Date 设置此 Calendar 的时间 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        calBegin.setTime(bigtime); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Calendar calEnd = Calendar.getInstance(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        // 使用给定的 Date 设置此 Calendar 的时间 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        calEnd.setTime(endtime); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        // 测试此日期是否在指定日期之后 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        while (endtime.after(calBegin.getTime()))  { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            // 根据日历的规则,为给定的日历字段添加或减去指定的时间量 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            calBegin.add(Calendar.DAY_OF_MONTH, 1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            lDate.add(calBegin.getTime()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        List<String> datas = new LinkedList<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        for (Date date : lDate) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            datas.add(new SimpleDateFormat("yyyy-MM-dd").format(date)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        datas.remove(datas.size()-1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return datas; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 获取当前日期的前后几天 +1day  -1day 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public static Date getCurDateWithMinTimeByDay(int day) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Date date=new Date(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Calendar calendar = Calendar.getInstance(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        calendar.setTime(date); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        calendar.add(Calendar.DAY_OF_MONTH, day); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        date = calendar.getTime(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return date; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 |