エフゲニー・ディミトロフ:
私はタイプで提出したエンティティを持っているjava.util.Date
(またはTimestamp
、ケースのために重要ではありません)。
public class StatusReason {
@Column("SRN_ID")
private Long id;
@Column("SRN_CREATOR")
private String creator;
@Column("SRN_REASON")
private String reason;
@Column("SRN_STATUS")
private String status;
@Column("SRN_TIMESTAMP")
private Date timestamp;
//getters, setters, etc...
}
データベースは、Oracleであり、対応する列がタイプであります TIMESTAMP(6) WITH TIME ZONE
私はデフォルトのいずれかを呼び出すときfindById
やfindAll
リポジトリの方法を私が取得します:ConverterNotFoundException: No converter found capable of converting from type [oracle.sql.TIMESTAMPTZ] to type [java.util.Date]
。
私は、カスタム作成することができますRowMapper
タイプのために、それは罰金を動作します。それは(から私の場合には、カスタムコンバータを登録することができます場合、私はちょうど思っていたoracle.sql.TIMESTAMPTZ
にjava.util.Date
)ので、まだデフォルトのマッピングの恩恵を受けることができますし、全体のアプリを通じてコンバータを使用します。
イェンスSchauder:
あなたは、あなたからの設定を継承してカスタム変換を登録することができますJdbcConfiguration
し、メソッドを上書きしますjdbcCustomConversions()
。
JdbcCustomConversions
リストを取りConverter
、引数として。