Java--七牛云存储图片示例
2017-03-28 17:58
148 查看
项目中会用到大量的图片和小视频,为了分担服务器压力,将文件都放在七牛云。这里的思路很简单,就是移动端、pc端把文件上传到服务器,服务器做一个临时缓存,保存必要的信息到数据库后,将文件上传到七牛云,最后删除服务器的缓存。当然,也可以直接让移动端、pc端把文件上传到七牛云,七牛云在返回信息给服务器,这种方法虽然更佳,但是敲起代码来有点麻烦,复杂。
1).先去注册一个七牛云帐号,新建一个存储空间,存储空间一定要设置公开!
2).下载java的SDK,这里以java-sdk-7.1.1为例
3).在maven中引入jar包
4).编写七牛云工具类:QiniuUtil.java
5).在controller中使用
1).先去注册一个七牛云帐号,新建一个存储空间,存储空间一定要设置公开!
2).下载java的SDK,这里以java-sdk-7.1.1为例
3).在maven中引入jar包
<!-- 七牛云 --> <dependency> <groupId>com.qiniu</groupId> <artifactId>qiniu-java-sdk</artifactId> <version>7.1.1</version> </dependency>
4).编写七牛云工具类:QiniuUtil.java
package com.hsp.util; import java.io.IOException; import java.util.UUID; import com.qiniu.common.QiniuException; import com.qiniu.http.Response; import com.qiniu.storage.BucketManager; import com.qiniu.storage.UploadManager; import com.qiniu.util.Auth; public class QiniuUtil { //设置需要操作的账号的AK和SK private static final String ACCESS_KEY = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"; private static final String SECRET_KEY = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"; //要上传的空间 private static final String bucketname = "xxxxxxxxxxxxxxxxxx"; //密钥 private static final Auth auth = Auth.create(ACCESS_KEY, SECRET_KEY); //普通上传 public void upload(String filePath, String fileName) throws IOException{ //创建上传对象 UploadManager uploadManager = new UploadManager(); try { //调用put方法上传 Response res = uploadManager.put(filePath, fileName, auth.uploadToken(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 e1) { //ignore } } } //普通删除 public void delete(String key) throws IOException { //实例化一个BucketManager对象 BucketManager bucketManager = new BucketManager(auth); //此处的33是去掉:http://ongsua0j7.bkt.clouddn.com/,剩下的key就是图片在七牛云的名称 key = key.substring(33); //System.out.println("key---------->" + key); try { //调用delete方法移动文件 bucketManager.delete(bucketname, key); } catch (QiniuException e) { //捕获异常信息 Response r = e.response; System.out.println(r.toString()); } } }
5).在controller中使用
... QiniuUtil qiniuUtil = new QiniuUtil(); try { //上传到七牛云 qiniuUtil.upload(filePath, fileName); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } ...
相关文章推荐
- java异步上传图片示例
- java将图片分割为几个部分示例
- Java 生成验证码图片 示例
- Java通过jersey实现客户端图片上传示例
- Java中上传图片压缩处理的方法示例
- JAVA======加载图片示例
- java后台接收app上传的图片的示例代码
- java实现图片转ascii字符画的方法示例
- java图片压缩和剪裁示例
- Java通过jersey实现客户端图片上传示例
- java将gif动态图片分开展示源代码简单示例
- 使用Java生成jpg与压缩图片为jpg文件的代码示例
- android客户端和java服务端之间用socket来传输图片(示例代码)
- Java开发七牛云存储 ,上传视频与图片文件 , 页面播放器GrindPlayer.swf
- java生成图片验证码示例代码
- java更改图片大小示例分享
- android客户端和java服务端之间用socket来传输图片(示例代码)
- Java网络编程--TCP文件上传、图片上传示例
- Java+mysql本地图片上传数据库及下载示例
- Java 处理图片与base64 编码的相互转换的示例