MongoDB中插入图片的方法操作是什么
这篇文章主要介绍“MongoDB中插入图片的方法操作是什么”的相关知识,下面会通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“MongoDB中插入图片的方法操作是什么”文章能帮助大家解决问题。
这篇关于“MongoDB中插入图片的方法操作是什么”的文章就介绍到这了,更多相关的内容,欢迎关注博信,小编将为大家输出更多高质量的实用文章!
图片存储方案:
mongodb操作文件,主要是通过GridFS类。存储文件主要存放在fs中,其中的fs是数据库默认的。并且GridFS是直接与数据库打交道,与collection集合无关。
maven中引入mongodb jar包
publicclassMongoImgStore{ publicstaticvoidmain(String[]args)throwsException{ //saveImgFile(); readImgFile(); } publicstaticvoidsaveImgFile()throwsException{ //连接服务器,线上肯定是带单独的ip应该这样使用Mongo("ip") Mongomongo=newMongo(); //连接数据库 DBdb=mongo.getDB("ImgGridFS"); //文件操作是在DB的基础上实现的,与表和文档没有关系 GridFSgridFS=null; gridFS=newGridFS(db); StringfileName="79831-uwceV8R.jpg"; FilereadFile=newFile("F:\\360data\\重要数据\\桌面\\page\\"+fileName); GridFSInputFilemongofile=gridFS.createFile(readFile); //可以再添加属性 mongofile.put("path","F:\\360data\\重要数据\\桌面\\"+fileName); //保存 mongofile.save(); } publicstaticvoidreadImgFile()throwsException{ //链接服务器 Mongomongo=newMongo(); //连接数据库 DBdb=mongo.getDB("ImgGridFS"); GridFSgridFs=null; gridFs=newGridFS(db); //查找条件 DBObjectquery=newBasicDBObject(); //查询的结果: List<GridFSDBFile>listfiles=gridFs.find(query); GridFSDBFilegridDBFile=listfiles.get(0); //获得其中的文件名 //注意:不是fs中的表的列名,而是根据调试gridDBFile中的属性而来 StringfileName=(String)gridDBFile.get("filename"); System.out.println("从Mongodb获得文件名为:"+fileName); FilewriteFile=newFile("F:\\360data\\重要数据\\桌面\\page\\"+fileName); if(!writeFile.exists()){ writeFile.createNewFile(); } System.out.println("可以访问的地址:"+writeFile.getAbsoluteFile()); System.out.println("总占用空间:"+writeFile.getTotalSpace()); System.out.println("总占用空间:"+gridDBFile.getInputStream()); //把数据写入磁盘中 //查看相应的提示 gridDBFile.writeTo("F:\\360data\\重要数据\\桌面\\page\\lovemm.jpg"); //写入文件中 gridDBFile.writeTo(writeFile); }
以上先保存图片到mongodb中,在MongoVUE中查看,我们保存了两次,直接双击图片也是能显示的
这篇关于“MongoDB中插入图片的方法操作是什么”的文章就介绍到这了,更多相关的内容,欢迎关注博信,小编将为大家输出更多高质量的实用文章!
版权声明
本文仅代表作者观点,不代表博信信息网立场。