在將一個(gè)日期轉(zhuǎn)換為給定日期的23:59:59時(shí),例如下面:
/**
* 獲取傳入時(shí)間的23:59:59時(shí)間
*
* @return
*/
public static Date getDateLastTime(Date date)? {?
? ? ?Calendar calendar = Calendar.getInstance();
?????calendar.setTime(date);
????calendar.set(Calendar.HOUR_OF_DAY, 23);
????calendar.set(Calendar.MINUTE, 59);
????calendar.set(Calendar.SECOND, 59);
????calendar.set(Calendar.MILLISECOND, 0);
????return calendar.getTime();
}
如果沒(méi)有明確設(shè)置毫秒值(加粗字體),那么在插入MySQL數(shù)據(jù)庫(kù)時(shí),就有可能將時(shí)間加1秒(00:00:00);
原因:如果沒(méi)有設(shè)置毫秒值,數(shù)據(jù)庫(kù)就隨機(jī)生成一個(gè)毫秒值,當(dāng)該值大于500ms時(shí),會(huì)出現(xiàn)加1秒的情況;所以,當(dāng)獲取某一天的23:59:59秒時(shí),可以設(shè)置毫秒值為0,類似于??的代碼。