- - PR -
JPAの検索結果に対するSpringのDependency Inject方法に関して
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2007-07-22 00:12
お世話になります。JPA(Java Persistence API)とSpring FrameworkのIntegrationに挑戦しています。
私の思い込みで、申し訳ないのですが、Springを使用することで、JPAのクエリーをした検索結果のオブジェクト(あるいはオブジェクトの配列)に対して、SpringはDependency Injectionを勝手に行ってくれるものと思っていましたが、実際やるとInjectionは行ってくれませんでした。(JpaDaoSupportを使用しても同様でした) 恐らく、Injectionを行わないのがスペックかなと思っているのですが、その認識は正しいでしょうか? 仮にスペックとしてInjectionを行わせるエレガントな方法はないでしょうか? なお、JPAはHibernate実装を使用しています。 以上、よろしくお願いします。 | ||||
|
投稿日時: 2007-07-22 01:15
beans.xmlはちゃんと記述してますよね?
| ||||
|
投稿日時: 2007-07-22 01:37
今回質問させていただいた部分以外は正常に動いていて、beans.xml(実際は今回はWebアプリなので、applicationContext.xml)は正しいのではないかと思います。 何か、手がかりになるものでも教えていただけたらうれしいです。 | ||||
|
投稿日時: 2007-07-22 08:10
beans.xml は総称でいったつもりなのですけどね。
インジェクションはなにも ApplicationContext.xml に定義しなくてもいいので あえて beans.xml といわせてもらいました。 [任意の名前].xmlでかいてもよかったのですが。←だとなんだかわかりませんしw | ||||
|
投稿日時: 2007-07-22 11:42
杏さん、失礼しました。 質問の内容ですが、やっぱりできないのでしょうか。 できない場合に、JPAからの検索結果にInjectを独自にやるということになると思うのですが、この場合に、生成されたインスタンスにInjectを行うことになると思います。 GuideだとinjectMembersのように既存インスタンスにinjectが可能ですが、Springで同様のことが可能ですか? | ||||
|
投稿日時: 2007-07-22 17:36
Spring は任意的に Injection してやる必要がありますよ。
xml定義をcontextに読み出してそれからオブジェクトを生成してやらないと Injectionは起動しません。 http://www.atmarkit.co.jp/fjava/rensai3/springdi01/springdi01_2.html Spring の Injectionの仕組み | ||||
|
投稿日時: 2007-07-22 18:23
杏さん、丁寧にありがとうございます。 残念ながら、DIのことは理解しているので、上記のURLはあまり役にたちませんでした。(ちなみに私のPOSTでGuideって書いたのはGuiceの間違いでした。ごめんなさい) どこかでInterceptして、インスタンスにinjectすることを目論んでいたのですが、、、Guiceなどの使用を検討してみます。 | ||||
|
投稿日時: 2007-07-22 18:56
私はJPAとかでとってきたオブジェクトはデータの入れ物としてくらいにしか使いません。
なので、〜をDIしたいと思わないのですが… JPAでとってきたオブジェクトに対して、何をDIしたいんですか? 従業員テーブルのデータを持ったクラスにどんなものをDIしたいんでしょう? |