[Seasar-user:16144] Re: [s2jdbc]のSQL自動生成による操作で格納Classを変更したい

Yasuo Higa [E-MAIL ADDRESS DELETED]
2008年 10月 27日 (月) 17:28:21 JST


ひがです。
> 
> お世話になります。山田です。
> 
> Yasuo Higa さんは書きました:
> > ひがです。
> >   
> > id()を使っているので、一件返すと仮定しますね。
> >
> > Baa baa = jdbcManager.from(Baa.class).id(id).getSingleResult();
> > Foo foo = Beans.createAndCopy(Foo.class, baa).execute();
> >
> > のようにBeansを途中に入れることによって、同名のプロパティを
> > コピーすることができます。
> >
> > 複数件の場合は、
> > List<Foo> fooList = new ArrayList<Foo>();
> > for (Baa baa : baaList) {
> >     Foo foo = Beans.createAndCopy(Foo.class, baa).execute();
> >     fooList.add(foo);
> > }
> >   
> ご案内を戴きました手順で、無事、期待通りの実装が出来ました。
> 有難う御座います。
> 
> 追伸
> 今回は更新を前提の取得でしたので、複数件のケースでもご案内の方法で
> 記述できそうですが、単に取得のみで異なるクラスに置き換える場合、
> 複数件の例ですと、何千、何万の入れ替えではパフォーマンス的に気になります。
> 
実際に近い環境で計ってみないとなんともいえませんが、
いまどきのリフレクションの処理(Beans)は結構早いですよ。

遅いと思った時点で、リフレクションを使わずに直接コードで
コピーするように書き換えるだとか、
検討したらよいのではないかと思います。

パフォーマンスが気になる場合は、実際に近い環境で計らないと
意味がない(想像で心配しても無意味)です。

よろしくお願いします。


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