jp.terasoluna.fw.util
クラス DateUtil

java.lang.Object
  上位を拡張 jp.terasoluna.fw.util.DateUtil

public class DateUtil
extends Object

日付・時刻・カレンダー関連のユーティリティクラス。


コンストラクタの概要
DateUtil()
           
 
メソッドの概要
static String dateToWarekiString(String format, Date date)
          java.util.Dateインスタンスを和暦として指定のフォーマットに 変換する。
static Date getSystemTime()
          システム時刻を取得する。
static String getWarekiGengoName(Date date)
          指定された日付の和暦元号を取得する。
static String getWarekiGengoRoman(Date date)
          指定された日付の和暦元号のローマ字表記(短縮形)を取得する。
static int getWarekiYear(Date date)
          指定された日付の和暦年を取得する。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

DateUtil

public DateUtil()
メソッドの詳細

getSystemTime

public static Date getSystemTime()
システム時刻を取得する。

WebサーバとAPサーバを分離したりクラスタ構成にした場合は、マシンに よりシステム日付が異なる可能性がある。これを避けるため、システム日付 取得には必ずこのメソッドを利用し、必要に応じて特定マシンの日付を取得 するなどの措置がとれるようにしておく。

戻り値:
システム時刻

dateToWarekiString

public static String dateToWarekiString(String format,
                                        Date date)
java.util.Dateインスタンスを和暦として指定のフォーマットに 変換する。

ApplicationResources.properties で指定された日付フォーマットを用いて、西暦、和暦の変換を 行うことができる。
下記は、和暦の境界となる日付、和暦名、アルファベット頭文字の 設定例である。 ApplicationResources.properties による 和暦の設定例

  wareki.gengo.0.name = 平成
  wareki.gengo.0.roman = H
  wareki.gengo.0.startDate = 1989/01/08
  wareki.gengo.1.name = 昭和
  wareki.gengo.1.roman = S
  wareki.gengo.1.startDate = 1926/12/25
  wareki.gengo.2.name = 大正
  wareki.gengo.2.roman = T
  wareki.gengo.2.startDate = 1912/07/30
  wareki.gengo.3.name = 明治
  wareki.gengo.3.roman = M
  wareki.gengo.3.startDate = 1868/09/04
  

フォーマット文字列

フォーマットは、java.text.SimpleDateFormat クラスの 時刻パターン文字列 として解釈されるが、以下のパターン文字の解釈が (デフォルトロケールの) SimpleDateFormat クラスと異なる。

記号  SimpleDateFormat   dateToWarekiString() 
G 紀元

例:
AD
和暦元号

例:
(4個以上の連続したパターン文字)
明治、大正、昭和、平成
(3個以下の連続したパターン文字)
M、T、S、H
y 年(西暦)

例:
2002
年(和暦)

例:
14
E 曜日

例:
Tuesday
曜日(日本語表記)

例:
(4個以上の連続したパターン文字)
月曜日、火曜日、水曜日
(3個以下の連続したパターン文字)
月、火、水

これらのうち、曜日(E)については SimpleDateFotmat のインスタンス作成時に、ロケールを "ja" に指定することで変換される。

和暦元号名、および和暦年については、getWarekiGengoName()、 getWarekiGengoRoman()、getWarekiYear() メソッドによって取得する。 これらのメソッドで参照する和暦の設定は、AplicationResources ファイルで 以下の書式で行う。

 wareki.gengo.ID.name=元号名
 wareki.gengo.ID.roman=元号のローマ字表記
 wareki.gengo.ID.startDate=元号法施行日(西暦:yyyy/MM/dd形式)
 

IDは、上記の三つの設定を関連付けするためのものであり、任意の文字列を 指定できる。

パラメータ:
format - フォーマット
date - 文字列に変換する時刻データ
戻り値:
和暦としてフォーマットされた文字列

getWarekiGengoName

public static String getWarekiGengoName(Date date)
指定された日付の和暦元号を取得する。

和暦元号は、ApplicationResources ファイルで指定する。

パラメータ:
date - 日付
戻り値:
和暦元号

getWarekiGengoRoman

public static String getWarekiGengoRoman(Date date)
指定された日付の和暦元号のローマ字表記(短縮形)を取得する。

和暦元号のローマ字表記は、ApplicationResourcesファイルで指定する。

パラメータ:
date - 日付
戻り値:
和暦元号のローマ字表記

getWarekiYear

public static int getWarekiYear(Date date)
指定された日付の和暦年を取得する。

パラメータ:
date - 日付
戻り値:
和暦年


Copyright © 2011. All Rights Reserved.