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の Javaの8&9のJavaを参照してくださいに組み込まれたクラスOracleでのチュートリアル。
calendar.set(Calendar.HOUR_OF_DAY, 0);
、私の目的のために、それはうまくいきます。