Możesz użyć GridFS . Jest to zalecana metoda, zwłaszcza gdy musisz przechowywać większe pliki (>16 MB):
File f = new File("sample.zip");
GridFS gfs = new GridFS(db, "zips");
GridFSInputFile gfsFile = gfs.createFile(f);
gfsFile.setFilename(f.getName());
gfsFile.setId(id);
gfsFile.save();
Lub w przypadku, gdy masz InputStream in
:
GridFS gfs = new GridFS(db, "zips");
GridFSInputFile gfsFile = gfs.createFile(in);
gfsFile.setFilename("sample.zip");
gfsFile.setId(id);
gfsFile.save();
Możesz załadować plik za pomocą jednego z GridFS.find
metody:
GridFSDBFile gfsFile = gfs.findOne(id);
InputStream in = gfsFile.getInputStream();