この記事は Java Advent Calendar 2014、8 日目です。昨日は @d7kuro さんの「Apache Camelに関する機能のまとめ」です。 Java で日付と時刻を扱う場合は Date and Time API を使います。過去の Java (Java 7 および Java 6)には同 API が含まれていないため、同等品の ThreeTen backport を別途用意します。ThreeTen backport さえ使えない Java は、古すぎるのでもう使わないでください。 Date and Time API には多数のクラスが含まれていますが、とりあえず LocalDate、LocalTime、LocalDateTime、DateTimeFormatter を覚えておけば良いです。「LocalDateTime には時差の情報がないから通常は ZonedDate
RHEL, CentOS, Amazon Linux (6以前) /etc/localtime を /usr/share/zoneinfo 以下から上書きしたりシンボリックリンク張ったりという手法が横行していますが、 /etc/localtime は glibc パッケージに含まれるためパッケージを更新すると上書きされてESTとかに戻ってしまうわけです。 当然ながら、ディストリビューションとして正しい設定方法が用意されているので、こちらを使います。 /etc/sysconfig/clock にタイムゾーンを書きます。*1sudo sed -i -e "s/^ZONE/#ZONE/g" -e "1i ZONE=\"Asia/Tokyo\"" /etc/sysconfig/clock tzdata-update を実行します。sudo /usr/sbin/tzdata-update これだけで
Functions That Test Spatial Relations Between Geometry Objects
4.10.8. MySQL サーバのタイム ゾーン サポートにある例のクエリを投げたところ、CONVERT_TZ() の結果が NULL になってしまっていました。 > SELECT CONVERT_TZ('2004-01-01 12:00:00','GMT','MET'); +-----------------------------------------------+ | CONVERT_TZ('2004-01-01 12:00:00','GMT','MET') | +-----------------------------------------------+ | NULL | +-----------------------------------------------+ 1 row in set (0.00 sec) 調べてみたら 4.5.5. mysql_tzinfo_t
問題 タイムオブジェクトを変更して、他のタイムゾーンで同じ瞬間を表したい。 解決 最も一般的なタイムゾーン変換は、ローカルタイムからUCTへの変換とUTCからローカルタイムへの変換である。これらの変換はTimeでもDateTimeでも簡単に行える。 Time#gmtimeのメソッドは、Timeオブジェクトを直接変更して、UCTに変換する。Time#localtimeメソッドは逆方向への変換を行う。 now = Time.now # => Sat Mar 18 20:15:58 EST 2006 now = now.gmtime # => Sun Mar 19 01:15:58 UTC 2006 now = now.localtme # => Sat Mar 18 20:15:58 EST 2006 DateTime.new_offsetメソッドは、DateTimeオブジェクトをあるタイムゾ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く