MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

Jak uzyskać strumień binarny przez GridFS ObjectId za pomocą Spring Data MongoDB?

Na to też się natknąłem. I faktycznie jestem dość zszokowany, że GridFsTemplate został zaprojektowany w ten sposób... W każdym razie, moje brzydkie "rozwiązanie" do tej pory:

public GridFsResource download(String fileId) {
    GridFSFile file = gridFsTemplate.findOne(Query.query(Criteria.where("_id").is(fileId)));

    return new GridFsResource(file, getGridFs().openDownloadStream(file.getObjectId()));
}

private GridFSBucket getGridFs() {

    MongoDatabase db = mongoDbFactory.getDb();
    return GridFSBuckets.create(db);
}

Uwaga:Aby to zadziałało, musisz wstrzyknąć MongoDbFactory...



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Jak pisać zapytania składające w mongoDB

  2. MongoDB — Ogranicz wyniki zapytania

  3. Jak Trello przechowuje dane w MongoDB? (Zbiór na tablicę?)

  4. Jak poprawnie zwiększyć liczbę dat w mongoDB?

  5. MongoDB $przykładowa stawka