Skip to content

k0emt/gridfs_example_java

Repository files navigation

# This project is primarily a set of example Java programs 
# that demonstrate working with MongoDB's GridFS & the metadata field
# sample images are from: http://www.mongodb.org/downloads

# Compile the sample programs
javac GridFsRead.java -classpath .:./mongo-java-driver-2.10.1.jar
javac GridFsStore.java -classpath .:./mongo-java-driver-2.10.1.jar
javac GridFsStoreChunk.java -classpath .:./mongo-java-driver-2.10.1.jar

# make sure mongod is running

# Insert the images into GridFS
java -classpath .:./mongo-java-driver-2.10.1.jar GridFsStore PoweredMongoDBbeige50.png beige
java -classpath .:./mongo-java-driver-2.10.1.jar GridFsStore PoweredMongoDBblue50.png  blue  
java -classpath .:./mongo-java-driver-2.10.1.jar GridFsStore PoweredMongoDBbrown50.png brown
java -classpath .:./mongo-java-driver-2.10.1.jar GridFsStore PoweredMongoDBgreen50.png green

java -classpath .:./mongo-java-driver-2.10.1.jar GridFsStoreChunk PoweredMongoDBbeige50.png chunkbeige
java -classpath .:./mongo-java-driver-2.10.1.jar GridFsStoreChunk PoweredMongoDBblue50.png  chunkblue  
java -classpath .:./mongo-java-driver-2.10.1.jar GridFsStoreChunk PoweredMongoDBbrown50.png chunkbrown
java -classpath .:./mongo-java-driver-2.10.1.jar GridFsStoreChunk PoweredMongoDBgreen50.png chunkgreen

# set an index on the metadata
# open a mongo shell, then:
use imagedb
db.images.files.find().count() // should be 8
db.images.chunks.find().count() // should be 12 
db.images.files.findOne() // notice the meta
db.images.files.ensureIndex({"metadata.color":1})
db.images.files.getIndexes()  // you should see the new index

# query with explain on index
db.images.files.find({"metadata.color":"blue"}).explain()
# the output should include this line: 
"cursor" : "BtreeCursor metadata.color_1",

# read file out, save as color.png
java -classpath .:./mongo-java-driver-2.10.1.jar GridFsRead green
# you should now have a green.png in the current directory

About

MongoDB GridFS Java examples

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages