[Seasar-user:18249] Re: DBFlute でシーケンス値取得

HATTI [E-MAIL ADDRESS DELETED]
2009年 8月 11日 (火) 13:27:27 JST


hatti です。
ご回答ありがとうございます。

> ・exbhvなどに、シーケンスの値を取得するメソッドを用意する。
> ・Entityの組み立て時に、明示的にシーケンスを取得して設定する。
ありがとうございます。参考にしてみてみます。
外側からパラメータコメントにシーケンス名だけ渡して nextVal を取れるようにすれば
多少は共通化がはかれるかな、、
完全なタイプセーフは今のところできないということですかね。

まだdbfluteを触りたてなので、どこまで何ができるかがわかっていないので
徐々に理解していきたいと思います。

2009/08/11 11:56 に mokkouyou<[E-MAIL ADDRESS DELETED]> さんは書きました:
> mokkouyouです。
>
> jfluteさんが1週間程度お休みとのこと(http://d.hatena.ne.jp/jflute/20090806)ですので、
> 的外れかもしれませんが、「私なら」ということで。
>
> 内部を軽く覗いて見ましたが、
> sequenceDefinitionMap.dfpropではどうにもなりそうにありませんね。
>
> 別に、SQL本体を外だしSQLにしないでも、
> ・exbhvなどに、シーケンスの値を取得するメソッドを用意する。
> ・Entityの組み立て時に、明示的にシーケンスを取得して設定する。
> としてもいいのではないでしょうか。
>
> シーケンスの取得に関して、
> そこの部分はどうしますかねぇ。。。というところですが、
>
> SQL文を実行する方法ってありましたっけ?(生で実行以外に)
>
> ない場合、
> オーソドックスに行くのであれば、
> ・シーケンス取得SQLを外だしSQL
>
> はたまた、
> ・PKで自動生成されるBsBhvの箇所を参考にして
> dbflute-runtime/src/main/java/org/seasar/dbflute/bhv/AbstractBehaviorWritable.java辺りのメソッドと
> SelectNextValCommandを利用して頑張ってみる。
> とかでしょうか。
>
> SelectNextValCommandはDbMetaを利用しているので、
> DbMetaの該当部分をオーバーライドしたサブクラスなどをを
> 渡してあげればいけそうな気もしますね。バージョンアップに弱くなりそうですが。
>
> 以上宜しくお願いいたします。
>
> 2009/08/11 9:48 HATTI <[E-MAIL ADDRESS DELETED]>:
>>
>> はじめまして hatti と申します。
>> メーリングリストに投稿するのは初めてなもので、
>> もし質問方法が間違っていたらご指摘ください。
>>
>> 現在 DBFlute + Oracle で、学習を進めているのですが、
>> シーケンス(Sequence)についてわからない点がございます。
>>
>> sequenceDefinitionMap.dfprop ファイルに、テーブルにひもづく
>> Sequenceを1つ設定できるのはわかったのですが(主キー用など)、
>> 1テーブルに対して複数のSequenceを設定できないのでしょうか。
>>
>> 主キーだけでなく、その他のカラムにもシーケンス値を
>> 利用したい場合はどのように記述するのでしょうか。
>> 外だしSQLにしないと対応できないのでしょうか。
>>
>> 以上、よろしくお願いいたします。
>> _______________________________________________
>> Seasar-user mailing list
>> [E-MAIL ADDRESS DELETED]
>> https://ml.seasar.org/mailman/listinfo/seasar-user
>
>
>
> --
> mokkouyou
> [E-MAIL ADDRESS DELETED]
>
> _______________________________________________
> Seasar-user mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/seasar-user
>
>


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