sql >> データベース >  >> NoSQL >> MongoDB

複数のモジュールが使用されている場合、Spring Dataはどのようにしてリポジトリをバックアップするためのストアを知るのですか?

    Spring Dataリポジトリー・インターフェース用に作成されたプロキシーを保管するかどうかの決定は、構成のセットアップによってのみ行われます。次の設定があると仮定します:

    @Configuration
    @EnableJpaRepositories("com.acme.foo")
    @EnableMongoRepositories("com.acme.foo")
    class Config { }
    

    これは、パッケージcom.acme.fooのインターフェイスとして、ある時点で爆発します。 どちらもMongoDBとJPAインフラストラクチャによって検出されます。これを解決するために、JavaConfigとXM​​Lの両方のサポートにより、包含フィルターと除外フィルターを定義できるため、命名規則や追加の注釈などを使用できます。

    @Configuration
    @EnableJpaRepositories(basePackages = "com.acme.foo", 
                           includeFilters = @Filter(JpaRepo.class))
    @EnableMongoRepositories(base Packages = "com.acme.foo", 
                             includeFilters = @Filter(MongoRepo.class))
    class Config { }
    

    この場合、2つのアノテーション@JpaRepo および@MongoRepo (ユーザーが作成する)は、関連するリポジトリインターフェースに注釈を付けることで、検出を選択的にトリガーするために使用されます。

    リポジトリインターフェイス宣言だけからターゲットとするストアを特定するのは困難であり、Bean定義が作成された時点では、それ以上のインフラストラクチャについてもわからないため、実際の自動検出は不可能です( EntityManager など)まだ。




    1. 最新の値の結果に条件を追加

    2. SQLでグループの最大値を持つ行を選択する5つの方法

    3. マングーススキーマをインスタンス化できません:オブジェクトは関数ではありません

    4. mongodb集約フレームワークでのcase-statementの実行