[seasar-s2dao-dev:692] [S2JDBC] Oracle の DATE 型対応

Koichi Kobayashi [E-MAIL ADDRESS DELETED]
2010年 10月 28日 (木) 19:00:17 JST


小林 (koichik) です。

主に中村 (taedium) さんへ。

[Seasar-user:20252] からのスレッドで発覚した
Oracle の DATE 型を java.sql.Timestamp で扱った
場合の問題ですが、S2JDBC の方は OracleDialect で
対応しました。[CONTAINER-431] r:4473 および r:4474

https://www.seasar.org/issues/browse/CONTAINER-431
http://www.seasar.org/source/browse/s2container?view=revision&revision=4473
http://www.seasar.org/source/browse/s2container?view=revision&revision=4474

S2JDBC-Gen の方も対応が必要なので時間があれば
お願いします。
変更内容は、Gen-Entiy および Gen-Ddl タスクで

Oracle DATE 型      <--> @Temporal(TIMESTAMP) 付きの
                         java.util.Date & java.util.Calendar
Oracle TIMESTAMP 型 <--> java.sql.Timestamp

にマッピングするというものです。

S2JDBC では OracleDialect の useOracleDate プロパティが
true (デフォルト) の場合のみ上記のマッピングを行い、
false の場合は従来と同じにしています。

Gen-Ddl では useTemporalType オプションとの兼ね合いを
どうするかが微妙に悩ましいかも。
従来は @Temporal 付き java.util.Date か、java.sql.* かの
どちらかしかなかったのに、この変更で混在することに
なるので。

ひとまず検討お願いします。


-- 
<component name="koichik">
    <property name="fullName">"Koichi Kobayashi"</property>
    <property name="email">"[E-MAIL ADDRESS DELETED]"</property>
    <property name="blog">"http://d.hatena.ne.jp/koichik"</property>
    <property name="twitter">"http://twitter.com/koichik"</property>
</component>



seasar-s2dao-dev メーリングリストの案内