[Seasar-user:8798] Re: 複数テーブルのJOIN読込について

fujihara [E-MAIL ADDRESS DELETED]
2007年 6月 29日 (金) 11:03:42 JST


小林様へ

アドバイスありがとうございました。
以下の方法で解決いたしました。

----- Original Message ----- 
From: "Koichi Kobayashi" <[E-MAIL ADDRESS DELETED]>
To: <[E-MAIL ADDRESS DELETED]>
Sent: Friday, June 29, 2007 1:30 AM
Subject: [Seasar-user:8795] Re: 複数テーブルのJOIN読込について


> 小林 (koichik) です.
> 
> S2Dao はほとんど触ったことがないので多少 (?)
> ウソが混じってるかもしれませんが...
> 
> Date:    Thu, 28 Jun 2007 20:38:51 +0900
> From:    "fujihara" <[E-MAIL ADDRESS DELETED]>
> To:      Seasar2 メーリングリスト <[E-MAIL ADDRESS DELETED]>
> Subject: [Seasar-user:8791] 複数テーブルのJOIN読込について
> 
>> 三つのテーブルをジョインしています。
>> テーブルが無いといってるのは分かるのですが回避策が
>> いろいろやってもわかりません。
> 
> ジョインは関係ないですね.
> SQL ファイルが使われる前に例外が飛んでいます.
> 
> Rsbs007data というクラスをエンティティとして
> 定義していますが,これに相当するテーブルは
> あるのでしょうか?
> エンティティというのはテーブルにマッピングされる
> ものなので,対応するテーブルが必要です.
> 
> SQL ファイルを見ると Usrmst,Usrgrpassigned,
> Usrgrp といったテーブルはあるようですが,名前の
> 付け方から想像するに Rsbs007data というテーブルは
> 存在しないのでは?
> 
> もし Rsbs007data というテーブルがないなら,
> Rsbs007data はエンティティではなく Dto です.
> @S2Dao アノテーションで Dao と関連づけるのは
> エンティティなので,Dto である Rsbs007data は
> 指定できません.
> 
> とりあえず Usrmst をエンティティとして定義し,
> UsrmstDao を作成し,UsrmstDao のメソッドとして
> getPageData() を作成するといいのではないでしょうか.
> 
> public class Usrmst {
>  private String usrId;
>  private String usrName;
>  private String passwd;
>  private String usrMailaddr;
>  private Integer registFlg;
>  private Integer tantoKbn;
> 
>  // setters and getters
> }
> 
> @S2Dao(bean=Usrmst.class)
> public interface UsrmstDao {
>  @Arguments({"usrId","usrName"})
>  public Rsbs007data[] getPageData(String usrId, String usrName);
> }
> 
> ただし,戻り値がエンティティではなく DTO に
> なるので,S2Dao 1.0.43 以降が必要みたいです.
> 
> 
> 
> -- 
> <component name="koichik">
>    <property name="fullName">"Koichi Kobayashi"</property>
>    <property name="email">"[E-MAIL ADDRESS DELETED]"</property>
>    <property name="blog">"http://d.hatena.ne.jp/koichik"</property>
> </component>
> 
> _______________________________________________
> Seasar-user mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/seasar-user
>



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