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

Spring-data-mongodb kết nối với nhiều cơ sở dữ liệu trong một phiên bản Mongo

Đây là một liên kết đến một bài báo mà tôi nghĩ là những gì bạn đang tìm kiếm http://michaelbarnesjr.wordpress.com/2012/01/19/spring-data-mongo/

Điều quan trọng là cung cấp nhiều mẫu

định cấu hình mẫu cho từng cơ sở dữ liệu.

<bean id="vehicleTemplate" class="org.springframework.data.mongodb.core.MongoTemplate">
    <constructor-arg ref="mongoConnection"/>
    <constructor-arg name="databaseName" value="vehicledatabase"/>
</bean>

định cấu hình mẫu cho từng cơ sở dữ liệu.

<bean id="imageTemplate" class="org.springframework.data.mongodb.core.MongoTemplate">
        <constructor-arg ref="mongoConnection"/>
        <constructor-arg name="databaseName" value="imagedatabase"/>
</bean>

<bean id="vehicleTemplate" class="org.springframework.data.mongodb.core.MongoTemplate">
    <constructor-arg ref="mongoConnection"/>
    <constructor-arg name="databaseName" value="vehicledatabase"/>
</bean>

Bây giờ, bạn cần cho Spring biết kho của bạn ở đâu để nó có thể đưa chúng vào. Tất cả chúng phải nằm trong cùng một thư mục. Tôi đã cố gắng đặt chúng trong các thư mục con khác nhau, và nó không hoạt động chính xác. Vì vậy, tất cả chúng đều nằm trong thư mục kho lưu trữ.

<mongo:repositories base-package="my.package.repository">
    <mongo:repository id="imageRepository" mongo-template-ref="imageTemplate"/>
    <mongo:repository id="carRepository" mongo-template-ref="vehicleTemplate"/>
    <mongo:repository id="truckRepository" mongo-template-ref="vehicleTemplate"/>
</mongo:repositories>

Mỗi kho lưu trữ là một Giao diện và được viết như sau (vâng, bạn có thể để trống):

@Repository
public interface ImageRepository extends MongoRepository<Image, String> {

}

@Repository
public interface TruckRepository extends MongoRepository<Truck, String> {

}

Tên của biến riêng imageRepository là bộ sưu tập! Image.java sẽ được lưu vào bộ sưu tập hình ảnh trong cơ sở dữ liệu imagedb.

Đây là cách bạn có thể tìm thấy , chèn xóa hồ sơ:

@Service
public class ImageService {

    @Autowired
    private ImageRepository imageRepository;
}

Bằng cách tự động tạo, bạn khớp tên biến với tên (id) trong cấu hình của mình.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. không thể truy cập các thuộc tính của req.user

  2. Truy vấn mảng trong danh sách nhúng

  3. Chuyển bộ sưu tập trong mongoengine để tìm truy vấn

  4. Làm thế nào để truy vấn MongoDB để kiểm tra xem một mục có tồn tại hay không?

  5. mongo-go-driver tìm tài liệu bằng _id