diff --git a/ruoyi-modules/ruoyi-file/pom.xml b/ruoyi-modules/ruoyi-file/pom.xml index fd9fe8c7..9647f150 100644 --- a/ruoyi-modules/ruoyi-file/pom.xml +++ b/ruoyi-modules/ruoyi-file/pom.xml @@ -40,33 +40,40 @@ org.springframework.boot spring-boot-starter-actuator - - - - com.github.tobato - fastdfs-client - - - + + - io.minio - minio - ${minio.version} + org.springframework.boot + spring-boot-configuration-processor + true - + com.ruoyi ruoyi-api-system - + com.ruoyi ruoyi-common-swagger - + + + com.github.tobato + fastdfs-client + + + + + io.minio + minio + ${minio.version} + + + commons-net @@ -79,7 +86,7 @@ 5.7.3 - + com.aliyun.oss aliyun-sdk-oss @@ -105,7 +112,7 @@ - + @@ -120,7 +127,7 @@ - + com.qiniu qiniu-java-sdk @@ -142,6 +149,15 @@ + + + + + org.springframework.boot + spring-boot-configuration-processor + + + diff --git a/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/RuoYiFileApplication.java b/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/RuoYiFileApplication.java index 1f320da9..cde2d62e 100644 --- a/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/RuoYiFileApplication.java +++ b/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/RuoYiFileApplication.java @@ -1,15 +1,28 @@ package com.ruoyi.file; +import com.ruoyi.file.config.*; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration; import com.ruoyi.common.swagger.annotation.EnableCustomSwagger2; +import org.springframework.boot.autoconfigure.web.ServerProperties; +import org.springframework.boot.context.properties.EnableConfigurationProperties; /** * 文件服务 * * @author ruoyi */ +@EnableConfigurationProperties(value = { + LocalFileConfig.class, + FtpConfig.class, + FastDfsConfig.class, + AliyunOssConfig.class, + CephConfig.class, + MinioConfig.class, + QiniuKodoConfig.class, + ServerProperties.class +}) @EnableCustomSwagger2 @SpringBootApplication(exclude = {DataSourceAutoConfiguration.class }) public class RuoYiFileApplication diff --git a/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/config/AliyunOssConfig.java b/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/config/AliyunOssConfig.java index 2f6447fb..e95408be 100644 --- a/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/config/AliyunOssConfig.java +++ b/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/config/AliyunOssConfig.java @@ -14,8 +14,9 @@ import org.springframework.context.annotation.Configuration; */ @RefreshScope @Configuration -@ConfigurationProperties(prefix = "aliyunoss") +@ConfigurationProperties(prefix = AliyunOssConfig.PREFIX) public class AliyunOssConfig { + public static final String PREFIX = "aliyun-oss"; /** * aliyun oss相关配置 * ACCESS_KEY_SECRET diff --git a/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/config/CephConfig.java b/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/config/CephConfig.java index 03bef407..61c29cbf 100644 --- a/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/config/CephConfig.java +++ b/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/config/CephConfig.java @@ -12,9 +12,10 @@ import org.springframework.context.annotation.Configuration; @RefreshScope @Configuration @ConfigurationProperties( - prefix = "ceph" + prefix = CephConfig.PREFIX ) public class CephConfig { + public static final String PREFIX = "ceph"; /** * s3 提供的 accessKey secretKey * 示例: diff --git a/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/config/FastDfsConfig.java b/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/config/FastDfsConfig.java index 519198b7..dd65f0b6 100644 --- a/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/config/FastDfsConfig.java +++ b/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/config/FastDfsConfig.java @@ -18,9 +18,9 @@ import org.springframework.context.annotation.Configuration; @ConfigurationProperties( prefix = FdfsClientConstants.ROOT_CONFIG_PREFIX ) -public class FastDfsConfig extends PooledConnectionFactory { +public class FastDfsConfig { /** - * 域名或本机访问地址 + * 文件对外访问域名or ip * FastDFS配置 其他参数见:{@link PooledConnectionFactory} * //@Value("${fdfs.domain}") */ diff --git a/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/config/FtpConfig.java b/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/config/FtpConfig.java index 0414ea1a..a4d2abdf 100644 --- a/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/config/FtpConfig.java +++ b/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/config/FtpConfig.java @@ -1,5 +1,6 @@ package com.ruoyi.file.config; +import com.ruoyi.file.service.FtpFileServiceImpl; import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.cloud.context.config.annotation.RefreshScope; import org.springframework.context.annotation.Configuration; @@ -9,13 +10,15 @@ import org.springframework.context.annotation.Configuration; * vsftpd 服务器搭建、ftp客户端filezilla使、ceph分布式文件系统 * https://blog.csdn.net/ab601026460/article/details/105928311 * @author dazer + * @see FtpFileServiceImpl */ @RefreshScope @Configuration @ConfigurationProperties( - prefix = "ftp" + prefix = FtpConfig.PREFIX ) public class FtpConfig { + public static final String PREFIX = "ftp"; /** * ftp访问地址 * eg1: www.ourslook.com diff --git a/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/config/LocalConfig.java b/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/config/LocalFileConfig.java similarity index 51% rename from ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/config/LocalConfig.java rename to ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/config/LocalFileConfig.java index 77452170..5cfbc8be 100644 --- a/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/config/LocalConfig.java +++ b/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/config/LocalFileConfig.java @@ -1,7 +1,8 @@ package com.ruoyi.file.config; import java.io.File; -import org.springframework.beans.factory.annotation.Value; + +import com.ruoyi.file.service.LocalFileServiceImpl; import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.cloud.context.config.annotation.RefreshScope; import org.springframework.context.annotation.Configuration; @@ -11,48 +12,55 @@ import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; /** * 本地文件配置 * 通用映射配置 + * + * @see LocalFileServiceImpl * * @author ruoyi */ @RefreshScope @Configuration -public class LocalConfig implements WebMvcConfigurer +@ConfigurationProperties(prefix = LocalFileConfig.PREFIX) +public class LocalFileConfig implements WebMvcConfigurer { + public static final String PREFIX = "file"; /** - * 资源映射路径 前缀 - * eg: eg: /statics + * 文件对外访问地址,一般就是应用 或者 nginx对外地址 + * eg: http://127.0.0.1:9300 + * ///@Value("${file.domain}") */ - @Value("${file.prefix}") - private String localFilePrefix; + private String domain; /** - * 域名或本机访问地址 - * eg: http://127.0.0.1:9300 + * 资源映射路径 前缀 + * eg: eg: /statics + * 一般访问:${domain}/${prefix}/key + * ///@Value("${file.prefix}") + * + * 上传之后的路径,形如:"url": "http://localhost:9300/statics/2021/07/16/25292b96-a107-4cf8-baca-e1cb693fd078.jpg" */ - @Value("${file.domain}") - private String domain; + private String prefix; /** * 上传文件存储在本地的根路径 * eg: D:/ruoyi/uploadPath + * ///@Value("${file.path}") */ - @Value("${file.path}") - private String localFilePath; + private String path; @Override public void addResourceHandlers(ResourceHandlerRegistry registry) { /** 本地文件上传路径 */ - registry.addResourceHandler(localFilePrefix + "/**") - .addResourceLocations("file:" + localFilePath + File.separator); + registry.addResourceHandler(prefix + "/**") + .addResourceLocations("file:" + path + File.separator); } - public String getLocalFilePrefix() { - return localFilePrefix; + public String getPrefix() { + return prefix; } - public void setLocalFilePrefix(String localFilePrefix) { - this.localFilePrefix = localFilePrefix; + public void setPrefix(String prefix) { + this.prefix = prefix; } public String getDomain() { @@ -63,11 +71,11 @@ public class LocalConfig implements WebMvcConfigurer this.domain = domain; } - public String getLocalFilePath() { - return localFilePath; + public String getPath() { + return path; } - public void setLocalFilePath(String localFilePath) { - this.localFilePath = localFilePath; + public void setPath(String path) { + this.path = path; } } \ No newline at end of file diff --git a/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/config/MinioConfig.java b/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/config/MinioConfig.java index 6121aed7..31b6d67f 100644 --- a/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/config/MinioConfig.java +++ b/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/config/MinioConfig.java @@ -1,21 +1,25 @@ package com.ruoyi.file.config; +import com.ruoyi.file.service.MinioDfsServiceImpl; import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.cloud.context.config.annotation.RefreshScope; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import io.minio.MinioClient; +import org.springframework.stereotype.Component; /** * Minio 配置信息 * * @author ruoyi + * @see MinioDfsServiceImpl 实现 */ @RefreshScope +@Component @Configuration -@ConfigurationProperties(prefix = "minio") -public class MinioConfig -{ +@ConfigurationProperties(prefix = MinioConfig.PREFIX) +public class MinioConfig { + public static final String PREFIX = "minio"; /** * 服务地址 * eg: http://192.168.254.100:9900 @@ -40,49 +44,40 @@ public class MinioConfig */ private String bucketName; - public String getUrl() - { + public String getUrl() { return url; } - public void setUrl(String url) - { + public void setUrl(String url) { this.url = url; } - public String getAccessKey() - { + public String getAccessKey() { return accessKey; } - public void setAccessKey(String accessKey) - { + public void setAccessKey(String accessKey) { this.accessKey = accessKey; } - public String getSecretKey() - { + public String getSecretKey() { return secretKey; } - public void setSecretKey(String secretKey) - { + public void setSecretKey(String secretKey) { this.secretKey = secretKey; } - public String getBucketName() - { + public String getBucketName() { return bucketName; } - public void setBucketName(String bucketName) - { + public void setBucketName(String bucketName) { this.bucketName = bucketName; } @Bean - public MinioClient getMinioClient() - { + public MinioClient getMinioClient() { return MinioClient.builder().endpoint(url).credentials(accessKey, secretKey).build(); } } diff --git a/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/config/QiniuKodoConfig.java b/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/config/QiniuKodoConfig.java index 8cbe372e..e89a5b5c 100644 --- a/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/config/QiniuKodoConfig.java +++ b/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/config/QiniuKodoConfig.java @@ -18,8 +18,9 @@ import org.springframework.context.annotation.Configuration; */ @RefreshScope @Configuration -@ConfigurationProperties(prefix = "qiniu") +@ConfigurationProperties(prefix = QiniuKodoConfig.PREFIX) public class QiniuKodoConfig { + public static final String PREFIX = "qiniu"; /** * AccessKey 简称ak * 申请地址=>登录七牛云:https://portal.qiniu.com/user/key diff --git a/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/controller/SysFileController.java b/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/controller/SysFileController.java index 435d9f46..4952f628 100644 --- a/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/controller/SysFileController.java +++ b/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/controller/SysFileController.java @@ -1,9 +1,11 @@ package com.ruoyi.file.controller; import com.ruoyi.file.service.IDfsService; +import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RestController; import org.springframework.web.multipart.MultipartFile; @@ -13,36 +15,58 @@ import com.ruoyi.system.api.domain.SysFile; /** * 文件请求处理 - * + * * @author ruoyi */ @RestController -public class SysFileController -{ +public class SysFileController { private static final Logger log = LoggerFactory.getLogger(SysFileController.class); @Autowired - private IDfsService sysFileService; + private IDfsService dfsService; /** * 文件上传请求 */ @PostMapping("upload") - public R upload(MultipartFile file) - { - try - { + public R upload(MultipartFile file) { + try { // 上传并返回访问地址 - String url = sysFileService.uploadFile(file); + String url = dfsService.uploadFile(file); SysFile sysFile = new SysFile(); sysFile.setName(FileUtils.getName(url)); sysFile.setUrl(url); return R.ok(sysFile); - } - catch (Exception e) - { + } catch (Exception e) { log.error("上传文件失败", e); return R.fail(e.getMessage()); } } + + /** + * 删除文件 + */ + @PostMapping("delete") + public R delete(String fileUrl) { + if (StringUtils.isBlank(fileUrl)) { + return R.fail(false, "fileUrl 不能为空"); + } + try { + // 上传并返回访问地址 + boolean isOk = dfsService.deleteFile(fileUrl); + return isOk ? R.ok(true, "删除成功") : R.fail(false, "删除失败"); + } catch (Exception e) { + log.error("删除文件失败", e); + return R.fail(false, "删除失败:" + e.getMessage()); + } + } + + /** + * 获取文件总大小,占用内容大小; + * 形如:总 233.57 GB, 可用 72.12 GB + */ + @GetMapping("objectsCapacityStr") + public R objectsCapacityStr() { + return R.ok(dfsService.objectsCapacityStr(), "获取成功"); + } } \ No newline at end of file diff --git a/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/service/FtpDfsServiceImpl.java b/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/service/FtpFileServiceImpl.java similarity index 97% rename from ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/service/FtpDfsServiceImpl.java rename to ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/service/FtpFileServiceImpl.java index 8b09da33..8122412a 100644 --- a/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/service/FtpDfsServiceImpl.java +++ b/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/service/FtpFileServiceImpl.java @@ -16,7 +16,7 @@ import java.io.IOException; * @author dazer */ @Service -public class FtpDfsServiceImpl implements IDfsService { +public class FtpFileServiceImpl implements IDfsService { @Autowired private FtpConfig ftpConfig; public static final String ACCESS_PREFIX = ""; diff --git a/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/service/IDfsService.java b/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/service/IDfsService.java index edd6ec95..9a21c902 100644 --- a/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/service/IDfsService.java +++ b/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/service/IDfsService.java @@ -60,7 +60,7 @@ public interface IDfsService /** * 获取文件占用空间 * 别名:objectsCapacity - * @return 文件大小字符串,eg: 100MB、2G + * @return 文件大小字符串,eg: 100MB、2G; 形如:总 233.57 GB, 可用 72.12 GB */ String objectsCapacityStr(); diff --git a/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/service/LocalDfsServiceImpl.java b/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/service/LocalDfsServiceImpl.java deleted file mode 100644 index 1655a0a8..00000000 --- a/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/service/LocalDfsServiceImpl.java +++ /dev/null @@ -1,58 +0,0 @@ -package com.ruoyi.file.service; - -import com.ruoyi.common.core.exception.CustomException; -import com.ruoyi.file.config.LocalConfig; -import org.apache.commons.lang3.StringUtils; -import org.springframework.context.annotation.Primary; -import org.springframework.stereotype.Service; -import org.springframework.web.multipart.MultipartFile; -import com.ruoyi.file.utils.FileUploadUtils; - -/** - * 本地文件存储 - * - * @author ruoyi - */ -@Primary -@Service -public class LocalDfsServiceImpl implements IDfsService -{ - private final LocalConfig localConfig; - - public LocalDfsServiceImpl(LocalConfig localConfig) { - this.localConfig = localConfig; - } - - /** - * 本地文件上传接口 - * - * @param file 上传的文件 - * @return 访问地址 - * @throws Exception - */ - @Override - public String uploadFile(MultipartFile file) throws Exception - { - return this.uploadFile(file, null); - } - - @Override - public String uploadFile(MultipartFile file, String modules) throws Exception { - String localFilePath = localConfig.getLocalFilePath(); - String domain = localConfig.getDomain(); - String localFilePrefix = localConfig.getLocalFilePrefix(); - - String name = FileUploadUtils.upload(localFilePath + "/" + StringUtils.defaultString(modules, ""), file); - return domain + localFilePrefix + name; - } - - @Override - public boolean deleteFile(String fileUrl) { - return false; - } - - @Override - public String objectsCapacityStr() { - throw new CustomException("本地存储-获取文件占用空间功能,敬请期待"); - } -} diff --git a/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/service/LocalFileServiceImpl.java b/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/service/LocalFileServiceImpl.java new file mode 100644 index 00000000..03bf028e --- /dev/null +++ b/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/service/LocalFileServiceImpl.java @@ -0,0 +1,111 @@ +package com.ruoyi.file.service; + +import cn.hutool.core.io.FileUtil; +import com.ruoyi.common.core.exception.CustomException; +import com.ruoyi.file.config.LocalFileConfig; +import org.apache.commons.io.FileUtils; +import org.apache.commons.lang3.StringUtils; +import org.springframework.context.annotation.Primary; +import org.springframework.stereotype.Service; +import org.springframework.web.multipart.MultipartFile; +import com.ruoyi.file.utils.FileUploadUtils; + +import java.io.File; + +/** + * 本地文件存储 + * + * @author ruoyi + */ +@Primary +@Service +public class LocalFileServiceImpl implements IDfsService +{ + private final LocalFileConfig localFileConfig; + + public LocalFileServiceImpl(LocalFileConfig localFileConfig) { + this.localFileConfig = localFileConfig; + } + + /** + * 本地文件上传接口 + * + * @param file 上传的文件 + * @return 访问地址 + * @throws Exception + */ + @Override + public String uploadFile(MultipartFile file) throws Exception + { + return this.uploadFile(file, null); + } + + @Override + public String uploadFile(MultipartFile file, String modules) throws Exception { + String localFilePath = localFileConfig.getPath(); + String domain = localFileConfig.getDomain(); + String localFilePrefix = localFileConfig.getPrefix(); + if (StringUtils.isBlank(localFilePath) || + StringUtils.isBlank(localFilePath) || + StringUtils.isBlank(localFilePath) ) { + throw new CustomException("文件服务器:file 相关配置不能为空!"); + } + + String name = FileUploadUtils.upload(localFilePath + "/" + StringUtils.defaultString(modules, ""), file); + return domain + localFilePrefix + name; + } + + @Override + public boolean deleteFile(String fileUrl) { + if (StringUtils.isBlank(fileUrl)) { + throw new CustomException("fileUrl不能为空!"); + } + String key = this.getStorePath(fileUrl); + String localFilePath = localFileConfig.getPath(); + + String filePath = localFilePath + "/" + key; + File file = new File(filePath); + if (!file.exists()) { + throw new CustomException("文件不存在,或者已经删除:" + filePath); + } + try { + return file.delete(); + } catch (Exception e) { + throw new CustomException("文件删除失败:" + e.getLocalizedMessage()); + } + } + + @Override + public String objectsCapacityStr() { + String localFilePath = localFileConfig.getPath(); + File file = new File(localFilePath); + long total = file.getTotalSpace(); + long free = file.getFreeSpace(); + String totalSpace = FileUtil.readableFileSize(total); + String freeSpace = FileUtil.readableFileSize(free); + return "总 " + totalSpace + ", 可用 " + freeSpace; + } + + /** + * 转换url,为原始的key + * + * @param filePath http://localhost:9300/statics/2021/07/16/25292b96-a107-4cf8-baca-e1cb693fd078.jpg + * @return 2021/07/16/25292b96-a107-4cf8-baca-e1cb693fd078.jpg + */ + private String getStorePath(String filePath) { + // 使用方式1 + String domain = localFileConfig.getDomain(); + String localFilePrefix = localFileConfig.getPrefix(); + String publicPath1 = domain + localFilePrefix; + String key = filePath.replace(publicPath1, ""); + + if (key.equals(filePath)) { + // 使用方式2 + String group = localFileConfig.getPrefix(); + // 获取group起始位置 + int pathStartPos = filePath.indexOf(group) + group.length() + 1; + key = filePath.substring(pathStartPos, filePath.length()); + } + return key; + } +} diff --git a/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/service/QiniuDfsServiceImpl.java b/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/service/QiniuDfsServiceImpl.java index 2843742a..ac0311a2 100644 --- a/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/service/QiniuDfsServiceImpl.java +++ b/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/service/QiniuDfsServiceImpl.java @@ -111,7 +111,7 @@ public class QiniuDfsServiceImpl implements IDfsService { } /** - * 转换url + * 转换url,为原始的key * * @param filePath http://guangdong-oss.ityun.ltd/upload/default/header.jpg * @return upload/default/header.jpg diff --git a/ruoyi-modules/ruoyi-file/src/main/resources/bootstrap.yml b/ruoyi-modules/ruoyi-file/src/main/resources/bootstrap.yml index 55ff4112..8c5d187d 100644 --- a/ruoyi-modules/ruoyi-file/src/main/resources/bootstrap.yml +++ b/ruoyi-modules/ruoyi-file/src/main/resources/bootstrap.yml @@ -7,6 +7,8 @@ spring: application: # 应用名称 name: ruoyi-file + main: + allow-bean-definition-overriding: true profiles: # 环境配置 active: dev @@ -23,3 +25,26 @@ spring: # 共享配置 shared-configs: - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension} + + +# 文件服务器之1 本地文件上传 +file: + domain: http://localhost:9300 + prefix: /statics + path: D:/ruoyi/uploadPath + +# 文件服务器之3 FastDFS配置 +fdfs: + domain: http://8.129.231.12 + soTimeout: 3000 + connectTimeout: 2000 + trackerList: 8.129.231.12:22122 + +# 文件服务器之4 Minio配置 +minio: + url: http://192.168.254.100:9900 + accessKey: D99KGE6ZTQXSATTJWU24 + secretKey: QyVqGnhIQQE734UYSUFlGOZViE6+ZlDEfUG3NjhJ + bucketName: neusoft-appt + #regex: .*appt-file/ + #encryptFlag: true