Class CurrentDateTimeAnnotationHandler
java.lang.Object
nablarch.core.db.statement.autoproperty.FieldAnnotationHandlerSupport
nablarch.core.db.statement.autoproperty.CurrentDateTimeAnnotationHandler
- All Implemented Interfaces:
AutoPropertyHandler
CurrentDateTimeが設定されているフィールドにシステム日時を設定するクラス。
- Author:
- Hisaaki Sioiri
-
Nested Class Summary
Nested classes/interfaces inherited from class nablarch.core.db.statement.autoproperty.FieldAnnotationHandlerSupport
FieldAnnotationHandlerSupport.FieldHolder<T extends Annotation>
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
CurrentDateTimeが設定されているフィールドの値にシステム日時を設定する。
システム日付は、SystemTimeProvider
から取得を行う。
システム日付は、下記のルールでフィールドに設定される。void
setDateFormat
(String dateFormat) デフォルトフォーマット。void
setDateProvider
(SystemTimeProvider dateProvider) 現在日時取得コンポーネントを設定する。Methods inherited from class nablarch.core.db.statement.autoproperty.FieldAnnotationHandlerSupport
getFieldList, setFieldAnnotationCache
-
Constructor Details
-
CurrentDateTimeAnnotationHandler
public CurrentDateTimeAnnotationHandler()
-
-
Method Details
-
handle
CurrentDateTimeが設定されているフィールドの値にシステム日時を設定する。
システム日付は、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)
で設定されたデフォルトフォーマットでフォーマットを行う。- Parameters:
obj
- 対象のオブジェクト
-
setDateProvider
現在日時取得コンポーネントを設定する。- Parameters:
dateProvider
- 現在日時取得コンポーネント
-
setDateFormat
デフォルトフォーマット。- Parameters:
dateFormat
- 日付のフォーマット形式
-