JAVA封装七牛云存储API

背景:

博文编辑需要上传图片的功能,我们采用七牛云存储的免费空间,他们提供了API可供使用,但是为了实现可配置,需要对api做一定的分装,供大家方便使用。


用法:

通过API可以这样写,写一个方法,将密钥和空间写死,对外提供一个接口如下:

JAVA封装七牛云存储API

初步封装

这个封装的特点是写法简单,易懂,但是扩展性不强,每个使用的用户都需要去改代码,才能完成空间的配置,如果想换个存储,或者换个用户名,密码还是需要修改代码。我提供了如下封装方式。

自定义封装存储API

1、定义接口。提供两个方法,

(1)自定义文件名,文件路径

(2)直接上传File

代码如下

JAVA封装七牛云存储API

文件上传接口

通过这个接口,可以做不同的实现,今天用七牛API实现一套上传,明天用八牛API实现另外一套上传都可以,扩展性强

写一个七牛API实现类如下

JAVA封装七牛云存储API

参数初始化配置及构造方法

JAVA封装七牛云存储API

两个方法实现类,返回文件名或自定义文件名

如何与spring集成使用

JAVA封装七牛云存储API

Spring配置实现类

使用

JAVA封装七牛云存储API

使用测试用例

使用的时候通过Resource注解注入实现类,而不用关心具体的实现类是哪个,也就是面向接口,而不是具体的实现类,以后扩展实现类,只需要在配置文件中替换实现类即可。


分享到:


相關文章: