java集成七牛云图片存储 --亲测可用

一、前期准备

二、创建图片存储空间

在这里插入图片描述

在这里插入图片描述

空间地区选择最好选择 华东、华北、华南这三个(根据地区不同,等会在代码里面的配置信息也不同,这三个的配置简单)

三、java集成七牛云

  • 所需依赖
<dependency>
    <groupId>com.qiniu</groupId>
    <artifactId>qiniu-java-sdk</artifactId>
    <version>7.2.6</version>
    <scope>compile</scope>
</dependency>
  • 工具类 QiniuUtil
package com.jeeplus.modules.api.util;

import com.alibaba.fastjson.JSON;
import com.qiniu.common.QiniuException;
import com.qiniu.common.Zone;
import com.qiniu.http.Response;
import com.qiniu.storage.Configuration;
import com.qiniu.storage.UploadManager;
import com.qiniu.util.Auth;

import java.util.Map;
//TODO 七牛云图片存储
public class QiniuUtil {

    //    外链域名
    public static String qiniu_url = "外链域名";


    //    AccessKey
    public static String access_key = "AccessKey";      

    //    SecretKey
    public static String secret_key = "SecretKey";

    //    存储空间名称
    public static String bucketName = "存储空间名称";


    //    上传文件
    public static String uploadQiNiu(byte[] file, String fileName) {

//        构造一个带指定Zone对象的配置了,  Zone.zone0() 代表华东区   Zone.zone1() 代表华北区  Zone.zone2() 代表华南区
        Configuration cfg = new Configuration(Zone.zone0());

//       其他参数参考类注释
        UploadManager uploadManager = new UploadManager(cfg);

//      默认不指定key的情况下,以文件内容的hash值作为文件名
        String key = null;
        Auth auth = Auth.create(access_key, secret_key);

        String token = auth.uploadToken(bucketName);


        try {
            Response response = uploadManager.put(file, fileName, token);
//            解析上传成功的结果
            String bodyString = response.bodyString();

            Map map = JSON.parseObject(bodyString, Map.class);

            String hash = (String) map.get("key");

            System.out.println("hash======" + hash);


            System.out.println("1111111111");
            System.err.println(hash);

            System.out.println("url:" + qiniu_url + fileName);

            System.err.println("http://" + qiniu_url + "/" + fileName);


            return "http://" + qiniu_url + "/" + fileName;


        } catch (QiniuException e) {
            Response r = e.response;
            System.err.println(r.toString());
            System.out.println("上传失败");
            try {
                System.err.println(r.bodyString());
                return null;
            } catch (QiniuException ex2) {
                //ignore
                e.printStackTrace();
                return null;
            }
        }
    }
}
  • 查看秘钥
    在这里插入图片描述

  • 查看外链域名
    在这里插入图片描述

在这里插入图片描述

新注册的用户可以使用七牛云提供的30天临时域名,因为我的过期了,所以这里显示空白,如果不仅仅是为了学习,请配置自定义域名

  • 空间存储地域不同,配置不同,详见QiniuUtil.java 第32行注释

四、调用示例

在这里插入图片描述
注:七牛云对接及其简单,按照步骤一步一步来即可直接使用

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值