七牛云存储之 Java SDK 简单上传

实现七牛的上传对多数开发者来说是很简单的,主要有一下几个步骤:

  1. 搭建开发环境;
    a.了解七牛的portal平台;
    b. 引入七牛的sdk,即jar包配置;
    Tips:不了解的可以先看一下我的博客“七牛云存储之Kodo开发环境搭建”
  2. 编码调试;

首先看一下我的项目结构:
七牛云存储之 Java SDK 简单上传_第1张图片
图中圈出的是需要引入的七牛jar包,kodo包即是数据存储相关操作,dora包下是数据处理相关;

程序如下:

package com.qiniu.kodo;

import com.qiniu.base.AccountMgr;
import com.qiniu.common.QiniuException;
import com.qiniu.http.Response;
import com.qiniu.storage.UploadManager;
import com.qiniu.util.Auth;

/**
 * 七牛 java sdk 简单上传
 * @author xuhuanchao
 */
public class SimpleUpload {

    Auth auth = Auth.create(AccountMgr.ACCESS_KEY, AccountMgr.SECRET_KEY);
    UploadManager uploadManager = new UploadManager();

    /**
     * 获取凭证
     * @param bucketName 空间名称
     * @return
     */
    public String getUpToken(String bucketName) {
        return auth.uploadToken(bucketName);
    }

    /**
     * 上传
     * @param filePath 文件路径  (也可以是字节数组、或者File对象)
     * @param key 上传到七牛上的文件的名称  (同一个空间下,名称【key】是唯一的)
     * @param bucketName 空间名称  (这里是为了获取上传凭证)
     */
    public void upload(String filePath, String key, String bucketName) {
        try {
            // 调用put方法上传
            Response res = uploadManager.put(filePath, key, getUpToken(bucketName));
            // 打印返回的信息
            System.out.println(res.bodyString());
        } catch (QiniuException e) {
            Response r = e.response;
            // 请求失败时打印的异常的信息
            System.out.println(r.toString());
            try {
                // 响应的文本信息
                System.out.println(r.bodyString());
            } catch (QiniuException qe) {
                // ignore
            }
        }
    }

    /**
     * 主函数:程序入口,测试功能
     * @param args
     */
    public static void main(String[] args) {
        // 上传文件的路径,因为在Mac下,所以路径和windows下不同
        String filePath = "/Users/xuhuanchao/Desktop/getImgByUrl.html";
        // 要上传的空间
        String bucketName = "admin-resources-bucket";
        // 上传到七牛后保存的文件名
        String key = "getImgByUrl.html";

        new SimpleUpload().upload(filePath, key, bucketName);
    }
}
package com.qiniu.base;

/**
 * 账户信息,获取授权认证
 * @author xuhuanchao
 *
 */
public class AccountMgr {

    public static final String ACCESS_KEY = "mfCLP7AlV77j42DZB697zUClBPGdjli_Av******";

    public static final String SECRET_KEY = "FeULzzI79z1EOsDZ0xsXhhXleNEqqN5qZP******";

}

运行程序,默认会返回一个hash值和上传的key,如图:
七牛云存储之 Java SDK 简单上传_第2张图片

最终就可以登录portal平台,找到上传指定的空间,选择内容管理进行查看上传的文件,如图:
七牛云存储之 Java SDK 简单上传_第3张图片

你可能感兴趣的:(Qiniu)