fix: 修复oss bean加载问题
This commit is contained in:
@@ -6,6 +6,7 @@ import com.schisandra.oss.application.convert.SchisandraOssMinioDTOConverter;
|
||||
import com.schisandra.oss.application.dto.SchisandraOssMinioDTO;
|
||||
import com.schisandra.oss.application.oss.core.StandardOssClient;
|
||||
import com.schisandra.oss.application.oss.core.minio.MinioOssClient;
|
||||
import com.schisandra.oss.application.oss.core.minio.MinioOssConfiguration;
|
||||
import com.schisandra.oss.application.oss.core.minio.model.MinioOssClientConfig;
|
||||
import com.schisandra.oss.application.oss.core.minio.model.MinioOssConfig;
|
||||
import com.schisandra.oss.common.entity.Result;
|
||||
@@ -15,6 +16,7 @@ import io.minio.MinioClient;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import okhttp3.OkHttpClient;
|
||||
import org.apache.commons.lang3.ObjectUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
@@ -33,65 +35,19 @@ import java.util.concurrent.TimeUnit;
|
||||
@RequestMapping("/oss/")
|
||||
@Slf4j
|
||||
public class SchisandraOssMinioController {
|
||||
@Autowired
|
||||
MinioOssClient minioOssClient;
|
||||
|
||||
@Resource
|
||||
private SchisandraOssMinioDomainService schisandraOssMinioDomainService;
|
||||
|
||||
// @Resource
|
||||
// private MinioOssClient minioOssClient;
|
||||
@Resource
|
||||
MinioOssConfiguration minioOssConfiguration;
|
||||
|
||||
@PostMapping("initMinio")
|
||||
public StandardOssClient initMinio() {
|
||||
SchisandraOssMinioBO minioBO = schisandraOssMinioDomainService.getMinioConfig(1L);
|
||||
SchisandraOssMinioDTO minio = SchisandraOssMinioDTOConverter.INSTANCE.convertBOToDTO(minioBO);
|
||||
if (ObjectUtils.isEmpty(minio)) {
|
||||
log.error("minio配置信息获取失败");
|
||||
}
|
||||
MinioOssConfig minioOssConfig = new MinioOssConfig();
|
||||
minioOssConfig.setBasePath(minio.getBasePath());
|
||||
minioOssConfig.setBucketName(minio.getBucketName());
|
||||
minioOssConfig.setAccessKey(minio.getAccessKey());
|
||||
minioOssConfig.setSecretKey(minio.getSecretKey());
|
||||
minioOssConfig.setEndpoint(minio.getEndpoint());
|
||||
minioOssConfig.init();
|
||||
if (Boolean.parseBoolean(minio.getOpenAdvancedSetup())) {
|
||||
MinioOssClientConfig minioOssClientConfig = new MinioOssClientConfig();
|
||||
minioOssClientConfig.setWriteTimeout(minio.getWriteTimeout());
|
||||
minioOssClientConfig.setConnectTimeout(minio.getConnectTimeout());
|
||||
minioOssClientConfig.setReadTimeout(minio.getReadTimeout());
|
||||
minioOssClientConfig.setFollowSslRedirects(Boolean.parseBoolean(minio.getFollowSslRedirects()));
|
||||
minioOssClientConfig.setRetryOnConnectionFailure(Boolean.parseBoolean(minio.getRetryOnConnectionFailure()));
|
||||
minioOssClientConfig.setPingInterval(minio.getPingInterval());
|
||||
minioOssClientConfig.setFollowRedirects(Boolean.parseBoolean(minio.getFollowRedirects()));
|
||||
minioOssClientConfig.setCallTimeout(minio.getCallTimeout());
|
||||
minioOssConfig.setClientConfig(minioOssClientConfig);
|
||||
}
|
||||
return minioOssClient(minioOssConfig);
|
||||
|
||||
public void initMinio() {
|
||||
minioOssConfiguration.minioOssClient();
|
||||
}
|
||||
|
||||
public StandardOssClient minioOssClient(MinioOssConfig minioOssConfig) {
|
||||
return new MinioOssClient(minioClient(minioOssConfig), minioOssConfig);
|
||||
}
|
||||
|
||||
public MinioClient minioClient(MinioOssConfig minioOssConfig) {
|
||||
MinioOssClientConfig clientConfig = minioOssConfig.getClientConfig();
|
||||
OkHttpClient okHttpClient = new OkHttpClient.Builder()
|
||||
.connectTimeout(clientConfig.getConnectTimeout(), TimeUnit.MILLISECONDS)
|
||||
.writeTimeout(clientConfig.getWriteTimeout(), TimeUnit.MILLISECONDS)
|
||||
.readTimeout(clientConfig.getReadTimeout(), TimeUnit.MILLISECONDS)
|
||||
.callTimeout(clientConfig.getCallTimeout(), TimeUnit.MILLISECONDS)
|
||||
.followRedirects(clientConfig.isFollowRedirects())
|
||||
.followSslRedirects(clientConfig.isFollowSslRedirects())
|
||||
.retryOnConnectionFailure(clientConfig.isRetryOnConnectionFailure())
|
||||
.pingInterval(clientConfig.getPingInterval(), TimeUnit.MILLISECONDS)
|
||||
.build();
|
||||
return MinioClient.builder()
|
||||
.endpoint(minioOssConfig.getEndpoint())
|
||||
.credentials(minioOssConfig.getAccessKey(), minioOssConfig.getSecretKey())
|
||||
.httpClient(okHttpClient)
|
||||
.build();
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增
|
||||
@@ -155,7 +111,7 @@ public class SchisandraOssMinioController {
|
||||
|
||||
@RequestMapping("testMinio")
|
||||
public void test() {
|
||||
// System.out.println(minioOssClient.getBasePath());
|
||||
System.out.println(minioOssClient.getBasePath());
|
||||
}
|
||||
|
||||
|
||||
|
@@ -29,6 +29,7 @@ import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import okhttp3.Headers;
|
||||
import org.springframework.context.annotation.Scope;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
@@ -50,6 +51,7 @@ import java.util.*;
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@Scope("Property")
|
||||
@Component
|
||||
public class MinioOssClient implements StandardOssClient {
|
||||
|
||||
|
@@ -11,6 +11,9 @@ import io.minio.MinioClient;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import okhttp3.OkHttpClient;
|
||||
import org.apache.commons.lang3.ObjectUtils;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.annotation.Scope;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
@@ -21,13 +24,16 @@ import java.util.concurrent.TimeUnit;
|
||||
* Created on 2021/11/24
|
||||
*/
|
||||
//@Configuration
|
||||
@Component
|
||||
@Slf4j
|
||||
public class MinioOssConfiguration {
|
||||
|
||||
@Resource
|
||||
MinioOssClient minioOssClient;
|
||||
|
||||
@Resource
|
||||
private SchisandraOssMinioDomainService schisandraOssMinioDomainService;
|
||||
|
||||
// @Bean
|
||||
public StandardOssClient minioOssClient() {
|
||||
SchisandraOssMinioBO minioBO = schisandraOssMinioDomainService.getMinioConfig(1L);
|
||||
SchisandraOssMinioDTO minio = SchisandraOssMinioDTOConverter.INSTANCE.convertBOToDTO(minioBO);
|
||||
@@ -59,7 +65,10 @@ public class MinioOssConfiguration {
|
||||
}
|
||||
|
||||
public StandardOssClient minioOssClient(MinioOssConfig minioOssConfig) {
|
||||
return new MinioOssClient(minioClient(minioOssConfig), minioOssConfig);
|
||||
|
||||
minioOssClient.setMinioOssConfig(minioOssConfig);
|
||||
minioOssClient.setMinioClient(minioClient(minioOssConfig));
|
||||
return minioOssClient;
|
||||
}
|
||||
|
||||
public MinioClient minioClient(MinioOssConfig minioOssConfig) {
|
||||
@@ -82,3 +91,4 @@ public class MinioOssConfiguration {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user