说明
七牛云是国内领先的企业级公有云服务商,致力于打造以数据为核心的场景化PaaS服务。围绕富媒体场景,七牛先后推出了对象存储,融合CDN加速,数据通用处理,内容反垃圾服务,以及直播云服务等。更为重要的是可以对通过身份认证的人提供免费的对象存储空间,这对于学生党和个人开发者是非常友好的。
安装
需要使用到qiniu-java-sdk、happy-dns-java、okhttp3、okio、gson等jar包
源码下载:https://github.com/qiniu/java-sdk
优快云集成jar包下载:https://download.youkuaiyun.com/download/weixin_38187317/10274389
使用
项目结构如下
1 设置好账号的ACCESS_KEY和SECRET_KEY,AccountMgr.java:
package test;
/**
* 账户信息,获取授权认证
* @author yunlingfly
*
*/
public class AccountMgr {
//AK
public static final String ACCESS_KEY = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
//SK
public static final String SECRET_KEY = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
}
这两个参数可以在七牛云客服端的个人中心->密钥管理可以找到如下图
2 编写上传程序,SimpleUpload.java:
package test;
import java.io.File;
import com.qiniu.common.QiniuException;
import com.qiniu.http.Response;
import com.qiniu.storage.UploadManager;
import com.qiniu.util.Auth;
/**
* 七牛 java sdk 简单上传,覆盖上传,文件上传
* @author yunlingfly
*/
public class SimpleUpload {
Auth auth = Auth.create(AccountMgr.ACCESS_KEY, AccountMgr.SECRET_KEY);
UploadManager uploadManager = new UploadManager();
/**
* 获取凭证
* @param bucketName 空间名称
* @param key 如果需要覆盖上传则设置此参数
* @return
*/
public String getUpToken(String bucketName,String key) {
return auth.uploadToken(bucketName);
}
/**
* 上传方法1
* @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,key));
// 打印返回的信息