[Seasar-user:16007] Re: [S2Dao] UploadedFileをPostgreSQLのOIDにINSARTする方法について

Toshihiro Nakamura [E-MAIL ADDRESS DELETED]
2008年 10月 16日 (木) 15:55:18 JST


中村(taedium)です。

> Postgres側もbyte型にすればうまくいくと思いますが(試し
> てませんが・・・)、oid型を利用できる方法はないでしょ
> うか?

S2DaoはPostgreSQLのOID型に対応していません。
現状としては独自のorg.seasar.extension.jdbc.types.ValueType
の実装を作ってもらう必要があります。

S2JDBCでは対応しているので、そのコードが参考になると思います。
org.seasar.extension.jdbc.dialect.PostgreDialectクラスの
フィールドに定義されたBLOB_TYPEを見てください。
(S2.4.30のソースコードを参照してください)

ポイントとしては、java.sql.Blobのダミーの実装を
作成する必要があります。

作成したValueTypeの実装(ここではexamle.MyBlobTypeクラスとします)は、
次のようにdiconファイルに登録してください。

    <component 
        name="myBlobType" 
        class="examle.MyBlobType"
    />

Entityのプロパティに次のように指定すれば、byte配列をOID型に
マッピングできるようになります。

    @ValueType("myBlobType")
    private byte[] test_data;
-- 
Nakamura Toshihiro <[E-MAIL ADDRESS DELETED]>



Seasar-user メーリングリストの案内