1、去七牛云注册,建好自有空间

2、导入依赖

<dependency><groupId>com.qiniu</groupId><artifactId>qiniu-java-sdk</artifactId><version>[7.7.0, 7.7.99]</version>
</dependency>

3、我这里是服务器直传,将本地的图片上传到七牛云托管,建好QiniuUtils工具类

package com.mszlu.blog.util;import com.alibaba.fastjson.JSON;
import com.qiniu.http.Response;
import com.qiniu.storage.Configuration;
import com.qiniu.storage.Region;
import com.qiniu.storage.UploadManager;
import com.qiniu.storage.model.DefaultPutRet;
import com.qiniu.util.Auth;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
import org.springframework.web.multipart.MultipartFile;@Component
public class QiniuUtils {public static  final String url = "http://rpe08rotl.hn-bkt.clouddn.com/";  //改成你的外链域名@Value("${qiniu.accessKey}")
private  String accessKey;@Value("${qiniu.accessSecretKey}")
private  String accessSecretKey;public  boolean upload(MultipartFile file,String fileName){//构造一个带指定 Region 对象的配置类Configuration cfg = new Configuration(Region.huanan());  //改成你设置的区域,我是华南huanan//...其他参数参考类注释UploadManager uploadManager = new UploadManager(cfg);//...生成上传凭证,然后准备上传String bucket = "mszlu-jia";  //改成你的bucket名称//默认不指定key的情况下,以文件内容的hash值作为文件名try {
byte[] uploadBytes = file.getBytes();Auth auth = Auth.create(accessKey, accessSecretKey);String upToken = auth.uploadToken(bucket);Response response = uploadManager.put(uploadBytes, fileName, upToken);//解析上传成功的结果DefaultPutRet putRet = JSON.parseObject(response.bodyString(), DefaultPutRet.class);return true;} catch (Exception ex) {ex.printStackTrace();}
return false;}
}

注意点:改成你自己的url、区域和bucket名称!!!!!!!

4、去application.yml文件配置密钥accessKey和accessSecretKey

qiniu.accessKey=PL0iXbQMO465*******************    //改成你自己的
qiniu.accessSecretKey=itupVOK2********************  //改成你自己的

ps:密钥在七牛云中复制:点个人头像-密钥管理

5、去application.yml文件配置文件最大值

# 上传文件总的最大值
spring.servlet.multipart.max-request-size=20MB
# 单个文件的最大值
spring.servlet.multipart.max-file-size=5MB5

6、Controller层代码

package com.mszlu.blog.controller;import com.mszlu.blog.util.QiniuUtils;
import com.mszlu.blog.vo.Result;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile;import java.util.UUID;@RestController
@RequestMapping("upload")
public class UploadController {@Autowiredprivate QiniuUtils qiniuUtils;@PostMappingpublic Result upload(@RequestParam("image") MultipartFile file){String originalFilename = file.getOriginalFilename();//唯一的文件名称 使用UUIDString fileName =  UUID.randomUUID().toString()+"." + StringUtils.substringAfterLast(originalFilename,".");//上传文件 长传到哪呢? 七牛云boolean upload = qiniuUtils.upload(file, fileName);if(upload){return Result.success(QiniuUtils.url  + fileName);}return Result.fail(2001,"上传失败");}}

7、测试

七牛云接收图片成功

七牛云上传图片,只需十分钟搞定相关推荐

  1. 看后至少多活十年--只需十分钟

    看后至少多活十年--只需十分钟 看后至少多活十年--只需十分钟 -北大齐教授健康讲座笔录- 看后至少多活十年!!!~~~~不要死于无知~~~~不但要保养好自己,回家也要告诉父母这么做~~~~这是好东西 ...

  2. JeecgBoot 单体升级微服务快速方案(十分钟搞定)

    JeecgBoot 单体升级微服务方案(十分钟搞定) 当前系统分为system.demo 等模块,现有需求把每个模块单独启动作为微服务应用,故而推出新版boot[20200812beta],支持快速切 ...

  3. java 分组报表_【Java】分组报表怎么做,积木报表十分钟搞定!

    首页 专栏 java 文章详情 0 分组报表怎么做,积木报表十分钟搞定! scott发布于 今天 12:24 报表需求 某大型超市需要做一张年度区域销售统计报表 展示2019和2020年度各地区每月的 ...

  4. 在线qmc0转换mp3工具_如何将M4A格式的音频转换为MP3格式?只需一步搞定

    随着网络技术的发达,会有很多人喜欢在网上下载东西,特别是很喜欢在网上下载音乐,但是下载音乐之后发现是M4A格式?这样用起来很不方便,都喜欢MP3格式的,那么如何将M4A格式的音频转换为MP3格式?今天 ...

  5. 逗号后面统一加空格_十分钟搞定字幕,教你做加字幕的“快手菜”

    平台上许多同学有疑问:做视频是否有加字幕的必要呢? 其实除了外语需要翻译.语速过快加字幕方便理解.普通话不标准等情况之外,还是建议有余力的同学可以加上字幕,提升用户的观看体验. 那么问题来了,存在以下 ...

  6. 如何将M4A格式的音频转换为MP3格式?只需一步搞定

    随着网络技术的发达,会有很多人喜欢在网上下载东西,特别是很喜欢在网上下载音乐,但是下载音乐之后发现是M4A格式?这样用起来很不方便,都喜欢MP3格式的,那么如何将M4A格式的音频转换为MP3格式?今天 ...

  7. 全网最简单的C# json数据解析 无敌菜鸟教程 十分钟搞定json数据解析

    全网最简单的C# json数据解析 无敌菜鸟教程 十分钟搞定json数据解析 废话先说一点,算了.直接进入正题吧. 用例子说话: JSON数据: string json: " {" ...

  8. JAVA微信企业付款到零钱(十分钟搞定),附完整DEMO下载

    最近帮朋友做了一个简单的微分销系统,实现从企业付款到零钱分润的功能,简单记录一下微信提现功能开发的流程, 主要就是按规则封装好请求参数调用微信接口,涉及一些签名校验: A.接口流程 获取用户OPENI ...

  9. java零钱换整程序_JAVA微信企业付款到零钱(十分钟搞定),

    JAVA微信企业付款到零钱(十分钟搞定), 最近帮朋友做了一个简单的微分销系统,实现从企业付款到零钱分润的功能,简单记录一下微信企业付款到零钱的开发过程, 主要就是按规则封装好请求参数调用微信接口,涉 ...

最新文章

  1. 你觉得 ThreadLocalRandom 这玩意真的安全吗?
  2. SAP已发票校验采购订单退货 - 特殊业务
  3. 迷宫游戏c语言代码讲解,迷宫游戏C语言代码讲解.doc
  4. 跳出内层循环 使用 for of 代替 map
  5. hdu 2222 Keywords Search(ac自动机)
  6. C#不支持XPATH2.0
  7. android打开网络连接失败怎么办,《我叫MT Online》安卓版网络连接失败怎么解决?...
  8. vue ui框架_Vue移动端UI框架指南
  9. hexo搭建个人博客_hexo 搭建个人博客
  10. import python settings from_python settings 中通过字符串导入模块
  11. 360浏览器清除缓存_手机中的缓存是什么?
  12. Could not get resource ‘https://dl.google.com/dl/android/maven2/com/android/
  13. 嵌入式端的神经网络算法部署和实现综合
  14. C# | 批量将CAD图幅网格外扩生成新图框(附源代码下载)
  15. CSDN调整图片大小
  16. WannaCry 勒索软件
  17. 网络爬虫Matplotlib
  18. Striped64 api详解
  19. 你真的了解ELT和ETL吗?
  20. android开发——用户头像

热门文章

  1. HTML期末大作业 web网页设计实例作业 ——中国水墨风书画艺术网站(12页)HTML DⅣV+ CSSJS
  2. html表格文字纵向排列,table中如何竖排英文?
  3. mate7 android 5.0,强烈恳求mate7能升级到安卓5.0!!!!
  4. android 播放器评测,山灵M6新版评测 简谈山灵所有安卓播放器音质差异
  5. 摄影基础之-单反测光系统-中
  6. 元盛居门店管理系统(门店管理板块)
  7. CentOS7 安装配置SFTP服务器详解
  8. Vue 项目中高亮格式化 xml 代码
  9. JQuery 再谈ajax局部刷新
  10. 小熊派 FreeRTOS+SPI+DMA 驱动 TFT-LCD