Java에서 시간을 재설정하는 데 문제가 있습니다. 주어진 날짜에 대해 시간을 00:00:00으로 설정하고 싶습니다.
이것은 내 코드입니다.
/**
* Resets milliseconds, seconds, minutes and hours from the provided date
*
* @param date
* @return
*/
public static Date trim(Date date) {
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
calendar.set(Calendar.MILLISECOND, 0);
calendar.set(Calendar.SECOND, 0);
calendar.set(Calendar.MINUTE, 0);
calendar.set(Calendar.HOUR, 0);
return calendar.getTime();
}
문제는 때로 시간이 12:00:00
있고 때로는 그럴 때가 00:00:00
있고 데이터베이스에서 저장된 07.02.2013 00:00:00
엔터티와 저장된 실제 엔터티 시간을 12:00:00
쿼리 할 때 쿼리가 실패 한다는 것입니다 .
알아 12:00:00 == 00:00:00
!
AppEngine을 사용하고 있습니다. AppEngine 버그, 문제 또는 기타 문제입니까? 아니면 다른 것에 의존합니까?
java.util.Date
, java.util.Calendar
그리고 java.text.SimpleDateFormat
지금 기존 에 의해 대체, java.time의 자바 8 자바 9 페이지에 내장 된 클래스 오라클 튜토리얼 .
calendar.set(Calendar.HOUR_OF_DAY, 0);
내 목적을 위해을 사용 했는데 잘 작동합니다.