mongodb中插入图片的方法

小编给大家分享一下MongoDB中插入图片的方法,希望大家阅读完这篇文章后大所收获,下面让我们一起去探讨方法吧!

成都创新互联公司致力于互联网网站建设与网站营销,提供成都网站设计、成都做网站、外贸网站建设、网站开发、seo优化、网站排名、互联网营销、重庆小程序开发、公众号商城、等建站开发,成都创新互联公司网站建设策划专家,为不同类型的客户提供良好的互联网应用定制解决方案,帮助客户在新的全球化互联网环境中保持优势。

图片存储方案:

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 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中查看,我们保存了两次,直接双击图片也是能显示的

mongodb中插入图片的方法

看完了这篇文章,相信你对mongodb中插入图片的方法有了一定的了解,想了解更多相关知识,欢迎关注创新互联行业资讯频道,感谢各位的阅读!


名称栏目:mongodb中插入图片的方法
网站地址:http://pwwzsj.com/article/peeeho.html