1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
package com.hmit.kernes.oss;
import com.aliyun.oss.OSSClient;
import com.hmit.kernes.utils.RRException;
import java.io.ByteArrayInputStream;
import java.io.InputStream;
/**
* 阿里云存储
* @author kernespring
* @email kernespring@gmail.com
* @date 2017-03-26 16:22
*/
public class AliyunCloudStorageService extends CloudStorageService{
private OSSClient client;
public AliyunCloudStorageService(CloudStorageConfig config){
this.config = config;
//初始化
init();
}
private void init(){
client = new OSSClient(config.getAliyunEndPoint(), config.getAliyunAccessKeyId(),
config.getAliyunAccessKeySecret());
}
@Override
public String upload(byte[] data, String path) {
return upload(new ByteArrayInputStream(data), path);
}
@Override
public String upload(InputStream inputStream, String path) {
try {
client.putObject(config.getAliyunBucketName(), path, inputStream);
} catch (Exception e){
throw new RRException("上传文件失败,请检查配置信息", e);
}
return config.getAliyunDomain() + "/" + path;
}
@Override
public String upload(byte[] data) {
return upload(data, getPath(config.getAliyunPrefix()));
}
@Override
public String upload(InputStream inputStream) {
return upload(inputStream, getPath(config.getAliyunPrefix()));
}
}