加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
README.md.bak 3.93 KB
一键复制 编辑 原始数据 按行查看 历史
hfl 提交于 2020-06-01 16:50 . huawei obs springboot starter
# obs文件上传服务
# 自定义starter封装好的api
## 一.桶的操作
- 查询所有桶
- 桶的新增
- 桶的删除
- 设置桶内文件对象过期时间
## 二.对象的操作
- 1.查询某个桶的所有对象
- 2.上传某个对象(全局访问权限版2个)(通过流+通过file对象)
- 3.上传某个对象(设置对象自定义元数据版)
- 4.获取某个对象的所有信息
- 5.获取某个对象的元数据
- 6.获取某个对象的流
- 7.拷贝对象
- 8.删除单个对象
- 9.下载某个对象到本地
## 三.文件夹的操作
- 1.创建文件夹
- 2.判断对象是否是文件夹
- 3.列举文件夹中的所有对象
- 4.删除某个文件夹下的所有对象
## 四.日志优化
- 自定义日志输出文件路径(暂时设置为不输出到文件)
## 五.清理临时文件策略
### 1.定时任务方式
- 1.临时文件上传到指令的临时文件桶,定时清理临时桶内的所有文件(比较安全)
- 2.临时文件和正式文件放在一个桶内,按照前缀区分是否是临时文件,比如临时文件
以/tmp开头,定时删除temp文件下的临时文件
### 2.设置文件有效期方式
- 上传是可以设置临时文件一个属性,就是过期时长,到期会被obs自动清理。不用我们手动操作了。
# 如何使用starter
## 前提 请注意
- obs的jar包在maven仓库的版本很老了,所以去官网下载比较新的jar包。
- 我已将esdk-obs-java-3.19.11.1.jar加载进依赖或者上传到私服,我已经上传到自己的私服了,直接引pom即可,直接使用会报错,
- 如果报错,请手动添加放在/obs-upload-spring-boot-starter/doc/lib下esdk-obs-java-3.19.11.1.jar
## 使用步骤1.引入自定义obs的starter
```xml
<dependency>
<groupId>com.wuzheng</groupId>
<artifactId>obs-upload-spring-boot-starter</artifactId>
<version>1.0.0-SNAPSHOT</version>
</dependency>
```
## 使用步骤2.配置文件设置参数
```yaml
obs:
#端点(xx和地区对应)
endPoint: http://obs.xxx.myhuaweicloud.com
ak: yourself ak
sk: yourslef sk
bucketName: yourself 桶的名字
#地区
bucketLoc: xxx
```
## 使用步骤3.启动类上加上启动注解
```java
@EnableObsAutoConfiguration
```
# 以下内容请忽略(个人开发此starter的记录而已)开发starter时 相关
## 一.华为obs的jar包放到私服仓库
```
mvn deploy:deploy-file ^
-DgroupId=com.huaweicloud ^
-DartifactId=esdk-obs-java ^
-Dversion=3.19.11.1 ^
-Dpackaging=jar ^
-Dfile=E:/workspace/springboot2/vehicle-info/common-upload/src/main/resources/lib/esdk-obs-java-3.19.11.1.jar ^
-Durl=http://192.168.0.118/repository/wz_dev_release ^
-DrepositoryId=wz_dev_release ^
```
## 二.开发obs starter需要的其他包位置目录:
```
/common-upload/doc/lib/ 下
```
或者直接引入下面的maven依赖包:
```
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>2.10.0</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>2.10.0</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.10.0</version>
</dependency>
<dependency>
<groupId>com.squareup.okhttp3</groupId>
<artifactId>okhttp</artifactId>
<version>3.11.0</version>
</dependency>
<dependency>
<groupId>com.squareup.okio</groupId>
<artifactId>okio</artifactId>
<version>1.14.0</version>
</dependency>
<!--<dependency>
<groupId>com.huaweicloud</groupId>
<artifactId>esdk-obs-java</artifactId>
<version>3.19.11.1</version>
</dependency>
-->
```
created by hfl
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化