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

Spring-data-mongo không thể khởi tạo java.util.List bằng cách sử dụng Constructor

Khi bạn $unwind reviews trường, cấu trúc json trả về của truy vấn không khớp với Hotel của bạn lớp học nữa. Bởi vì $unwind hoạt động thực hiện reviews một đối tượng phụ thay vì một danh sách. Nếu bạn thử truy vấn của mình trong robomongo hoặc một số công cụ khác, bạn có thể thấy đối tượng trả về của mình là như vậy

{
  "_id" : ObjectId("59b519d72f9e340bcc830cb3"),
  "id" : "59b23c39c70ff63135f76b14",
  "name" : "Signature",
  "reviews" : {
    "id" : 1,
    "userName" : "Salman",
    "rating" : 8,
    "approved" : true
  }
}

Vì vậy, bạn nên sử dụng một lớp khác thay vì Hotel như UnwindedHotel

public class UnwindedHotel {

    private String name;
    private int pricePerNight;
    private Address address;
    private Review reviews;
}

UnwindOperation unwindOperation = Aggregation.unwind("reviews");
Aggregation aggregation = Aggregation.newAggregation(unwindOperation);
AggregationResults<UnwindedHotel> results=mongoOperations.aggregate(aggregation,"hotel", UnwindedHotel.class);


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Danh sách các chỉ số trong MongoDB?

  2. Làm thế nào để hiển thị hình ảnh base64 trong phản ứng?

  3. Dịch vụ Mongo bị lỗi. Cần tìm lý do của sự cố

  4. Khi con trỏ mongodb sẽ hết hạn

  5. thời gian tìm kiếm có chỉ mục> không có chỉ mục