溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

mongodb中插入圖片的方法

發布時間:2020-07-02 15:01:03 來源:億速云 閱讀:392 作者:清晨 欄目:編程語言

小編給大家分享一下mongodb中插入圖片的方法,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討方法吧!

圖片存儲方案:

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中查看,我們保存了兩次,直接雙擊圖片也是能顯示的

mongodb中插入圖片的方法

看完了這篇文章,相信你對mongodb中插入圖片的方法有了一定的了解,想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女