Springboot整合oss(对象存储)
一、整合前的工作准备–>进入oss的管理控制后台
1、创建AccessKey
在弹出的提示框中,尽量下载自己的accesskey,避免后期查不了
2、创建bucket
二、正式整合
1、后端
在application.yml中配置oss
写完尽量用ctrl+alt+L进行格式化
# 阿里云对象存储(以下三层结构是对本人的项目的需要而写的,
#看个人需要,最少要两层-->前两层)
aliyun:
oss:
file:
endpoint: xxxxxxxx #刚开始创建bucket时的第五步保存的内容
keyid: xxxxxxxxxxxxxxxxxxxx # 你的accesskey
keysecret: xxxxxxxxxxxxxxxxxxxxx #你的accesssecret
bucketname: xxxxxxxxxxxxxxxxxxx #你的bucketname
2、创建FileController.java的前提工作
1、创建BaseResponse.java
package com.zg.goj.common;
import java.io.Serializable;
import lombok.Data;
/**
* 通用返回类
*
* @param <T>
*
*/
@Data
public class BaseResponse<T> implements Serializable {
private int code;
private T data;
private String message;
public BaseResponse(int code, T data, String message) {
this.code = code;
this.data = data;
this.message = message;
}
public BaseResponse(int code, T data) {
this(code, data, "");
}
public BaseResponse(ErrorCode errorCode) {
this(errorCode.getCode(), null, errorCode.getMessage());
}
}
2、创建ErrorCode.java
package com.zg.goj.common;
/**
* 自定义错误码
*
*
*/
public enum ErrorCode {
SUCCESS(0, "ok"),
PARAMS_ERROR(40000, "请求参数错误"),
NOT_LOGIN_ERROR(40100, "未登录"),
NO_AUTH_ERROR(40101, "无权限"),
NOT_FOUND_ERROR(40400, "请求数据不存在"),
FORBIDDEN_ERROR(40300, "禁止访问"),
SYSTEM_ERROR(50000, "系统内部异常"),
OPERATION_ERROR(50001, "操作失败");
/**
* 状态码
*/
private final int code;
/**
* 信息
*/
private final String message;
ErrorCode(int code, String message) {
this.code = code;
this.message = message;
}
public int getCode() {
return code;
}
public String getMessage() {
return message;
}
}
3、创建ResultUtils.java
package com.zg.goj.common;
/**
* 返回工具类
*
*
*/
public class ResultUtils {
/**
* 成功
*
* @param data
* @param <T>
* @return
*/
public static <T> BaseResponse<T> success(T data) {
return new BaseResponse<>(0, data, "ok");
}
/**
* 失败
*
* @param errorCode
* @return
*/
public static