public class CurrentDateTimeAnnotationHandler extends FieldAnnotationHandlerSupport
FieldAnnotationHandlerSupport.FieldHolder<T extends java.lang.annotation.Annotation>
Constructor and Description |
---|
CurrentDateTimeAnnotationHandler() |
Modifier and Type | Method and Description |
---|---|
void |
handle(java.lang.Object obj)
CurrentDateTimeが設定されているフィールドの値にシステム日時を設定する。
システム日付は、 SystemTimeProvider から取得を行う。システム日付は、下記のルールでフィールドに設定される。 |
void |
setDateFormat(java.lang.String dateFormat)
デフォルトフォーマット。
|
void |
setDateProvider(SystemTimeProvider dateProvider)
現在日時取得コンポーネントを設定する。
|
getFieldList, setFieldAnnotationCache
public void handle(java.lang.Object obj)
SystemTimeProvider
から取得を行う。1.Date
の場合SystemTimeProvider.getDate()
をDate
に変換して設定する。 2.Time
の場合SystemTimeProvider.getDate()
をTime
に変換して設定する。 3.Timestamp
の場合SystemTimeProvider.getDate()
をTimestamp
に変換して設定する。 4.String
、Integer
(プリミティブ型を含む)、Long
(プリミティブ型を含む)の場合SystemTimeProvider.getDate()
をCurrentDateTime#format()でフォーマットしそれぞれの型に型変換し設定する。 formatが設定されていない場合は、setDateFormat(java.lang.String)
で設定されたデフォルトフォーマットでフォーマットを行う。
obj
- 対象のオブジェクトpublic void setDateProvider(SystemTimeProvider dateProvider)
dateProvider
- 現在日時取得コンポーネントpublic void setDateFormat(java.lang.String dateFormat)
dateFormat
- 日付のフォーマット形式