我這里是以七牛為例子
在yml中添加七牛的相關配置
?
qiniu: #七牛的相關配置accessKey: your_access_keysecretKey: your_secret_keybucket: your_bucket_namedomain: your_domain
?對應在給配置文件來一個相應的實體類QiniuConfig
@Component
@ConfigurationProperties(prefix = "qiniu")//獲取配置
public class QiniuConfig {//七牛云提供的密鑰對,用于身份驗證private String accessKey;private String secretKey;//存儲空間名稱private String bucket;//存儲空間綁定的域名private String domain;public String getAccessKey() {return accessKey;}public void setAccessKey(String accessKey) {this.accessKey = accessKey;}public String getSecretKey() {return secretKey;}public void setSecretKey(String secretKey) {this.secretKey = secretKey;}public String getBucket() {return bucket;}public void setBucket(String bucket) {this.bucket = bucket;}public String getDomain() {return domain;}public void setDomain(String domain) {this.domain = domain;}public QiniuConfig() {}public QiniuConfig(String domain, String bucket, String secretKey, String accessKey) {this.domain = domain;this.bucket = bucket;this.secretKey = secretKey;this.accessKey = accessKey;}
}
在補全相應的service
?
@Service
public class CommonServiceImpl {private final QiniuConfig qiniuConfig;@Autowiredpublic CommonServiceImpl(QiniuConfig qiniuConfig) {this.qiniuConfig = qiniuConfig;}/*** 檢查七牛云配置并返回相應信息。** @return 如果配置存在,則返回配置信息;如果不存在,則提示添加配置。*/public R<QiniuConfig> getQiniuConfig() {if (isQiniuConfigured()) {return R.success(qiniuConfig);} else {return R.error("請在配置文件中添加七牛云的相關配置。");}}/*** 檢查是否已配置七牛云。** @return 如果配置存在返回true,否則返回false。*/private boolean isQiniuConfigured() {return qiniuConfig != null &&qiniuConfig.getAccessKey() != null && !qiniuConfig.getAccessKey().isEmpty() &&qiniuConfig.getSecretKey() != null && !qiniuConfig.getSecretKey().isEmpty() &&qiniuConfig.getBucket() != null && !qiniuConfig.getBucket().isEmpty() &&qiniuConfig.getDomain() != null && !qiniuConfig.getDomain().isEmpty();}}
重點在這里
在補全相關的controller
/*** 公共配置controller*/
@Controller
@ResponseBody
@RequestMapping("/commonConfig")
@Tag(name = "公共配置controller")
public class CommonController {@Autowiredprivate CommonServiceImpl commonService;@Operation(summary = "獲取七牛的相關配置", description = "獲取七牛的相關配置")@GetMapping("/getQiniu")public R getQiniuConfig() {return commonService.getQiniuConfig();}}
?最后測試