2011-12-22 18 views
13

小さなスタンドアロンアプリケーションでは、スプリングデータとスプリング設定を一緒に使用しようとしています。Spring ConfigによるSpringデータリポジトリのスキャン?

... 
    public static void main(String[] args) 
    {   
    ApplicationContext ctx = new AnnotationConfigApplicationContext(AppConfig.class); 
    ... 
    } 

1.私の質問は、私は春の設定によって

<jpa:repositories base-package="foo.repositories" /> 

を使用せずに春のデータリポジトリを発見することができる方法ですか?

2.「ClassPathXmlApplicationContext」と「AnnotationConfigApplicationContext」を何らかの方法で一緒に使用できますか?

答えて

2

この答えは時代遅れになりました。

現在のところ、<jpa:repositories … />に相当するものはありません。自由にトータルトラックを感じ、JIRA ticketに従ってください。この機能は、JPAモジュール(1.1)とMongoDB(1.1)の今後のGAリリースの主要なものになります。

+0

クイック返信をありがとう。 – cscsaba

1

私はあなたの文脈を見てすべきだと思う:コンポーネント・スキャン

<context:component-scan base-package="com.myProject"/> 

それはコンポーネント@/@リポジトリ/ @サービスと注釈付きのコンポーネントを自動検出。これについてはhereをチェックしてください。

+0

に@Repository注釈使用インターフェイススプリングデータコンテキストに属するの公開インターフェースリポジトリ 'が。とにかくあなたの助けと時間に感謝します。 – cscsaba

4

あなたの2番目の質問に答えるために:はい、JavaとXMLの設定を組み合わせることができます。この方法で、次のSpring Data JPAリリースを待つ必要はありません。

ただ、このように、ImportResourceとあなたのコンフィギュレーションクラスに注釈を付ける:

@Configuration 
@ImportResource("classpath:jpa-config.xml") 
public class AppConfig { 
    ... 
} 
52

あなたは今注釈@EnableJpaRepositories("some.root.package")を使用することができます。例えば

@Configuration 
@EnableTransactionManagement(proxyTargetClass = true) 
@EnableJpaRepositories("some.root.package") 
@ComponentScan(basePackages = { "maybe.another.root.package" }) 
public class SystemConfiguration { 
    ... 
} 

Spring Data's announcement

+0

これは正解になりました。助けてくれてありがとう! – cspin

関連する問題