データベースから日付と時刻を取得しています。それらは別々のフィールドに格納されていますが、日付/時刻を適切に反映する java.util.Date オブジェクトに結合したいと考えています。
これが私の元のアプローチですが、欠陥があります。私は常に、本来あるべき日付/時刻から 6 時間ずれた日付/時刻になってしまいます。これは、Time には Date と同様にタイムゾーン オフセットがあり、タイムゾーン オフセットが必要なのはそのうちの 1 つだけであるためだと思います。
正しい日付/時刻が得られるようにこれを行う方法に関する提案はありますか?
import java.sql.Time;
import java.util.Calendar;
import java.util.Date;
import org.apache.commons.lang.time.DateUtils;
public static Date combineDateTime(Date date, Time time)
{
if (date == null)
return null;
Date newDate = DateUtils.truncate(date, Calendar.DATE);
if (time != null)
{
Date t = new Date(time.getTime());
newDate = new Date(newDate.getTime() + t.getTime());
}
return newDate;
}