[Seasar-user:19778] Re: [Doma]Enumの利用での要望

Toshihiro Nakamura [E-MAIL ADDRESS DELETED]
2010年 5月 20日 (木) 19:16:17 JST


中村(taedium)です。

> Domaを利用させて頂いています。

ありがとうございます。

> 今のプロジェクトではenumを積極的に使いたいと思っているのですが、
> DomaでのenumとDBとのマッピングでの要望です。

検討したいと思います。
ちょっと時間ください。


もし、今のバージョンを自分で拡張するならばという前提ですが、
次のようにすると対応できます。

今のバージョンでは、org.seasar.doma.jdbc.type.EnumType
というクラスでenumとDBとのマッピングを行っていますが、
EnumTypeの代わりに独自のクラスを作成し、そこで独自の
マッピングを行えます。

EnumTypeは、次の箇所でインスタンス化され使われています。
・StandardJdbcMappingVisitor#visitEnumWrapper
・StandardSqlLogFormattingVisitor#visitEnumWrapper
これらのメソッドをオーバーライドしてEnumTypeを使用しない実装を作ります。
(enumのクラスに@EnumDomainが注釈されていたら独自の
マッピングクラスを使用するといった実装になるかと思います)

そして、上述のXxxVisitorを拡張したクラスのインスタンスは、
Dialectのコンストラクタに渡してください。

-- 
Nakamura Toshihiro <[E-MAIL ADDRESS DELETED]>



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