MongoDB中插入图片的方法操作是什么
Admin 2022-05-28 群英技术资讯 557 次浏览
图片存储方案:
mongodb操作文件,主要是通过GridFS类。存储文件主要存放在fs中,其中的fs是数据库默认的。并且GridFS是直接与数据库打交道,与collection集合无关。
maven中引入mongodb jar包
public class MongoImgStore { public static void main(String[] args) throws Exception { //saveImgFile(); readImgFile(); } public static void saveImgFile() throws Exception { //连接服务器 ,线上肯定是带单独的ip 应该这样使用 Mongo("ip") Mongo mongo = new Mongo(); //连接数据库 DB db = mongo.getDB("ImgGridFS"); //文件操作是在DB的基础上实现的,与表和文档没有关系 GridFS gridFS = null; gridFS = new GridFS(db); String fileName = "79831-uwceV8R.jpg"; File readFile = new File("F:\\360data\\重要数据\\桌面\\page\\" + fileName); GridFSInputFile mongofile = gridFS.createFile(readFile); //可以再添加属性 mongofile.put("path", "F:\\360data\\重要数据\\桌面\\" + fileName); //保存 mongofile.save(); } public static void readImgFile() throws Exception { //链接服务器 Mongo mongo = new Mongo(); //连接数据库 DB db = mongo.getDB("ImgGridFS"); GridFS gridFs = null; gridFs = new GridFS(db); //查找条件 DBObject query = new BasicDBObject(); //查询的结果: List<GridFSDBFile> listfiles = gridFs.find(query); GridFSDBFile gridDBFile = listfiles.get(0); //获得其中的文件名 //注意 : 不是fs中的表的列名,而是根据调试gridDBFile中的属性而来 String fileName = (String) gridDBFile.get("filename"); System.out.println("从Mongodb获得文件名为:" + fileName); File writeFile = new File("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中查看,我们保存了两次,直接双击图片也是能显示的
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
文本给大家分享是关于mongodb聚合查询的内容,介绍了mongodb中按天进行聚合查询的的实例,具有一定的借鉴价值,需要的朋友可以参考,下面我们就一起来看看。
关闭mongodb端口的方法:1、使用ps -ef | grep mongo命令查看mongo相关进程。2、使用“kill <进程号>”命令关闭mongodb进程。
mongodb数据库删除语句是db.dropDatabase(),此语句可以删除当前数据库,所以使用此语句需要先使用use命令切换到指定数据库。
MongoDB 复制(副本集) MongoDB复制是将数据同步在多个服务器的过程。 复制提供了数据的冗余备份,并在多个服务器上存储数据副本,提高了数据的可用性, 并可以保证数据的安全性。 复制还允许您从硬件故障和服务中断中恢复数据。 什么是复制? 保障数据的安全性 数据高可用性 (24*7) 灾难恢复 无需停机维护(如备份,重建索引,压缩) 分布式读取数据 MongoDB复制原理 mongodb的复制至少需要两个节点。其中一个..
MongoDB 数据库引用 在上一章节MongoDB关系中我们提到了MongoDB的引用来规范数据结构文档。 MongoDB 引用有两种: 手动引用(Manual References)DBRefs DBRefs vs 手动引用 考虑这样的一个场景,我们在不同的集合中 (address_home, address_office, address_mailing, 等)存储不同的地址(住址,办公室地址,邮件地址等)。 这样,我们在调..
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008