MongoDb--初识
来源:互联网 发布:软件著作权代办 编辑:程序博客网 时间:2024/06/05 22:17
MongoDb初学者一个比较好的网站:http://www.runoob.com/mongodb/mongodb-create-database.html
一、java链接Mongo读取文件的例子:
public class MongoGridFSTest { private static MongoClient mongoClient = null; private static DB db = null; private static GridFS gridFS = null; private static String dbName = "360loan"; public static void main(String[] args) throws UnknownHostException, Exception { mongoClient = new MongoClient("jira.360haojie.loan", 7952); db = mongoClient.getDB(dbName); gridFS = new GridFS(db); String file = "D:\\20170907185929.zip"; if (!new File(file).exists()) { System.out.println("file is not exists."); } String fileName = "20170907185929.zip"; //把文件保存到gridfs中,并以文件的md5值为id save(new FileInputStream(file), fileName, fileName); //据文件名从gridfs中读取到文件 GridFSDBFile gridFSDBFile = getByFileName(fileName); if (gridFSDBFile != null) { System.out.println("filename:" + gridFSDBFile.getFilename()); System.out.println("md5:" + gridFSDBFile.getMD5()); System.out.println("length:" + gridFSDBFile.getLength()); System.out.println("uploadDate:" + gridFSDBFile.getUploadDate()); System.out.println("--------------------------------------"); gridFSDBFile.writeTo(new FileOutputStream("D:\\20170907185929-temp.zip")); } else { System.out.println("can not get file by name:" + fileName); } } /** * 用给出的id,保存文件,透明处理已存在的情况 * id 可以是string,long,int,org.bson.types.ObjectId 类型 * * @param in * @param id */ public static void save(InputStream in, Object id, String fileName) { DBObject query = new BasicDBObject("_id", id); GridFSDBFile gridFSDBFile = gridFS.findOne(query); if (gridFSDBFile != null) { gridFS.remove(gridFSDBFile); } GridFSInputFile gridFSInputFile = gridFS.createFile(in); gridFSInputFile.setId(id); gridFSInputFile.setFilename(fileName); //gridFSInputFile.setChunkSize(); //gridFSInputFile.setContentType(); //gridFSInputFile.setMetaData(); gridFSInputFile.save(); } /** * 据id返回文件 * * @param id * @return */ public static GridFSDBFile getById(Object id) { DBObject query = new BasicDBObject("_id", id); GridFSDBFile gridFSDBFile = gridFS.findOne(query); return gridFSDBFile; } /** * 据文件名返回文件,只返回第一个 * * @param fileName * @return */ public static GridFSDBFile getByFileName(String fileName) { DBObject query = new BasicDBObject("filename", fileName); GridFSDBFile gridFSDBFile = gridFS.findOne(query); return gridFSDBFile; }}
阅读全文
0 0
- MongoDB初识
- 初识 MongoDB
- 初识MongoDB
- 初识MongoDB
- mongodb初识
- MongoDB初识
- mongodb初识
- 初识MongoDB
- 初识MongoDB
- mongodb初识
- 初识 MongoDB
- mongodb初识
- 初识MongoDB
- 初识mongoDB
- mongoDB初识
- 初识Mongodb
- 初识MongoDB
- 初识mongodb
- 短信接口哪家好 凌凯短信接口
- 实现手机号码中间4位用星号(*)替换显示
- NYOJ 664 数字整除
- css中box-shadow的应用技巧
- 练习三 求1+2!+3!+...+20!的和
- MongoDb--初识
- MFC消息机制
- Hibernate多对一、多对多关系--cascade、inverse
- 在CSDN上如何快速转载博客
- iOS 证书申请和使用详解
- GBDT和XGBOOST的区别
- Leetcode解题笔记 1.Two Sum [Easy]
- 实现-超级课程表——校园登录(2)
- Maven阿里云仓库地址配置