MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

Làm thế nào Spring Data biết wicht lưu trữ để sao lưu một kho lưu trữ nếu nhiều mô-đun được sử dụng?

Quyết định lưu trữ proxy được tạo cho giao diện kho lưu trữ Dữ liệu mùa xuân chỉ được thực hiện do thiết lập cấu hình của bạn. Giả sử bạn có cấu hình sau:

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

Điều này sẽ nổ tung vào một lúc nào đó khi các giao diện trong gói com.acme.foo đều được phát hiện bởi cơ sở hạ tầng MongoDB và JPA. Để giải quyết vấn đề này, cả hỗ trợ JavaConfig và XML đều cho phép bạn xác định các bộ lọc bao gồm và loại trừ để bạn có thể sử dụng các quy ước đặt tên, chú thích bổ sung hoặc những thứ tương tự:

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

Trong trường hợp này, hai chú thích @JpaRepo@MongoRepo (do bạn tạo) sẽ được sử dụng để kích hoạt phát hiện có chọn lọc bằng cách chú thích các giao diện kho lưu trữ có liên quan với chúng.

Việc phát hiện tự động thực sự là một điều không thể vì thật khó để biết bạn đang nhắm mục tiêu đến cửa hàng nào chỉ từ khai báo giao diện kho lưu trữ và tại thời điểm khi các định nghĩa bean được tạo, chúng tôi thậm chí không biết về bất kỳ cơ sở hạ tầng nào nữa (an EntityManager hoặc tương tự) chưa.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. return Model.create (arr) .exec () không hoạt động trong mongoose

  2. Kết quả truy vấn phép chiếu Mongo thay đổi so với thử nghiệm trong ứng dụng shell và nodejs

  3. Cách áp dụng cập nhật bằng toán tử vị trí được lọc với arrayFilters

  4. kết nối với cơ sở dữ liệu atlas mongo

  5. Tại sao PyMongo ném AutoReconnect?