[Seasar-user:11718] Re: [S2JDBC] 型マッピングのカスタマイズについて
Yasuo Higa
[E-MAIL ADDRESS DELETED]
2007年 11月 20日 (火) 10:40:20 JST
ひがです。
>
> PPOIです。回答ありがとう御座います。
>
> > DbmsDialect をカスタマイズすれば可能です.
> > 例えば OracleDialect では,Java 側の boolean を
> > DB 側では数値で扱うようカスタマイズしています.
>
> ありがとうございます。だいたい理解できましたので,ちょっと弄ってみます。
> ちなみに DbmsDialect#getValueType() を実装orオーバーライドすれば良いと認
> 識していますが,あってますでしょうか?
>
はい。
>
> 今回このような質問をさせていただいたのは,以下のような実装をやるためで
> した。
>
> = DDL =
> {{{
> CREATE TABLE config (
> config_name VARCHAR(256) NOT NULL PRIMARY KEY,
> config_value VARCHAR(4092)
> );
> }}}
>
> = Entity =
> {{{
> @Entity
> public class Config {
> public String configName;
> public Object configValue;
> }
> }}}
>
> Config#configValue には様々な型のデータが設定されていて,それを何らか
> の方法でテキストとしてシリアライズした物を DB の config_table.config_value
> に格納するという方式です。
> S2Dao ではこの変換処理をやる ValueType 実装を作った上で VALUE_TYPE ア
> ノテーションを Config#configValue に設定すれば実現できたのですが,S2JDBC
> でこれを実現するにはどうやるんだろうと思った次第です。
>
@Lob
public Object configValue;
のように指定するとBlobで格納するようにしてもいいかも。
今でも、
public byte[] configValue;
と指定するとBlobで格納してます。
Seasar-user メーリングリストの案内