commit ca54a752e25a2d6db8e6465c9f1e3b3e1aa5d7ad Author: 张腾 <3467447354@qq.com> Date: Fri Jul 26 01:45:28 2024 +0800 初始化 diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 0000000..13566b8 --- /dev/null +++ b/.idea/.gitignore @@ -0,0 +1,8 @@ +# Default ignored files +/shelf/ +/workspace.xml +# Editor-based HTTP Client requests +/httpRequests/ +# Datasource local storage ignored files +/dataSources/ +/dataSources.local.xml diff --git a/.idea/compiler.xml b/.idea/compiler.xml new file mode 100644 index 0000000..63b509c --- /dev/null +++ b/.idea/compiler.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/encodings.xml b/.idea/encodings.xml new file mode 100644 index 0000000..aa00ffa --- /dev/null +++ b/.idea/encodings.xml @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/.idea/inspectionProfiles/Project_Default.xml b/.idea/inspectionProfiles/Project_Default.xml new file mode 100644 index 0000000..ee2c34b --- /dev/null +++ b/.idea/inspectionProfiles/Project_Default.xml @@ -0,0 +1,14 @@ + + + + \ No newline at end of file diff --git a/.idea/jarRepositories.xml b/.idea/jarRepositories.xml new file mode 100644 index 0000000..3d4444c --- /dev/null +++ b/.idea/jarRepositories.xml @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 0000000..67e1e61 --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,12 @@ + + + + + + + + \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..94a25f7 --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..483b2a3 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,19 @@ +#指定构建镜像的起始镜像 +FROM anolis-registry.cn-zhangjiakou.cr.aliyuncs.com/openanolis/dragonwell:17.0.4.0.4.8-standard-ga-8.6 + +#定义时区参数 +ENV TZ=Asia/Shanghai + +#执行一些必备的条件 +RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo '$TZ' > /etc/timezone + +#挂载 +VOLUME ["/home/logs/cloud-file","/home/uploadPath"] + +#拷贝执行jar包文件 +COPY ./target/cloud-modules-file.jar /home/app.jar + +#构建启动命令 +ENTRYPOINT ["java","-jar"] +CMD ["/home/app.jar"] + diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..efb3d45 --- /dev/null +++ b/pom.xml @@ -0,0 +1,91 @@ + + + + com.muyu + cloud-modules + 3.6.3 + + 4.0.0 + + cloud-modules-file + + + cloud-modules-file文件服务 + + + + + + + com.alibaba.cloud + spring-cloud-starter-alibaba-nacos-discovery + + + + + com.alibaba.cloud + spring-cloud-starter-alibaba-nacos-config + + + + + com.alibaba.cloud + spring-cloud-starter-alibaba-sentinel + + + + + org.springframework.boot + spring-boot-starter-actuator + + + + + io.minio + minio + ${minio.version} + + + + + com.muyu + cloud-common-system + + + + + com.muyu + cloud-common-api-doc + + + + + + ${project.artifactId} + + + org.springframework.boot + spring-boot-maven-plugin + + + + repackage + + + + + + + + org.apache.maven.plugins + maven-deploy-plugin + + true + + + + + + diff --git a/src/main/java/com/muyu/file/CloudFileApplication.java b/src/main/java/com/muyu/file/CloudFileApplication.java new file mode 100644 index 0000000..4e1c628 --- /dev/null +++ b/src/main/java/com/muyu/file/CloudFileApplication.java @@ -0,0 +1,17 @@ +package com.muyu.file; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration; + +/** + * 文件服务 + * + * @author muyu + */ +@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class}) +public class CloudFileApplication { + public static void main (String[] args) { + SpringApplication.run(CloudFileApplication.class, args); + } +} diff --git a/src/main/java/com/muyu/file/config/MinioConfig.java b/src/main/java/com/muyu/file/config/MinioConfig.java new file mode 100644 index 0000000..af8c1bb --- /dev/null +++ b/src/main/java/com/muyu/file/config/MinioConfig.java @@ -0,0 +1,72 @@ +package com.muyu.file.config; + +import io.minio.MinioClient; +import org.springframework.boot.context.properties.ConfigurationProperties; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +/** + * Minio 配置信息 + * + * @author muyu + */ +@Configuration +@ConfigurationProperties(prefix = "minio") +public class MinioConfig { + /** + * 服务地址 + */ + private String url; + + /** + * 用户名 + */ + private String accessKey; + + /** + * 密码 + */ + private String secretKey; + + /** + * 存储桶名称 + */ + private String bucketName; + + public String getUrl () { + return url; + } + + public void setUrl (String url) { + this.url = url; + } + + 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 getBucketName () { + return bucketName; + } + + public void setBucketName (String bucketName) { + this.bucketName = bucketName; + } + + @Bean + public MinioClient getMinioClient () { + return MinioClient.builder().endpoint(url).credentials(accessKey, secretKey).build(); + } +} diff --git a/src/main/java/com/muyu/file/config/ResourcesConfig.java b/src/main/java/com/muyu/file/config/ResourcesConfig.java new file mode 100644 index 0000000..78a8be0 --- /dev/null +++ b/src/main/java/com/muyu/file/config/ResourcesConfig.java @@ -0,0 +1,48 @@ +package com.muyu.file.config; + +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; +import org.springframework.web.servlet.config.annotation.CorsRegistry; +import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry; +import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; + +import java.io.File; + +/** + * 通用映射配置 + * + * @author muyu + */ +@Configuration +public class ResourcesConfig implements WebMvcConfigurer { + /** + * 资源映射路径 前缀 + */ + @Value("${file.prefix}") + public String localFilePrefix; + /** + * 上传文件存储在本地的根路径 + */ + @Value("${file.path}") + private String localFilePath; + + @Override + public void addResourceHandlers (ResourceHandlerRegistry registry) { + /** 本地文件上传路径 */ + registry.addResourceHandler(localFilePrefix + "/**") + .addResourceLocations("file:" + localFilePath + File.separator); + } + + /** + * 开启跨域 + */ + @Override + public void addCorsMappings (CorsRegistry registry) { + // 设置允许跨域的路由 + registry.addMapping(localFilePrefix + "/**") + // 设置允许跨域请求的域名 + .allowedOrigins("*") + // 设置允许的方法 + .allowedMethods("GET"); + } +} diff --git a/src/main/java/com/muyu/file/controller/SysFileController.java b/src/main/java/com/muyu/file/controller/SysFileController.java new file mode 100644 index 0000000..ed04d11 --- /dev/null +++ b/src/main/java/com/muyu/file/controller/SysFileController.java @@ -0,0 +1,44 @@ +package com.muyu.file.controller; + +import com.muyu.common.core.domain.Result; +import com.muyu.common.core.utils.file.FileUtils; +import com.muyu.file.service.ISysFileService; +import com.muyu.common.system.domain.SysFile; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestPart; +import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.multipart.MultipartFile; + +/** + * 文件请求处理 + * + * @author muyu + */ +@RestController +public class SysFileController { + private static final Logger log = LoggerFactory.getLogger(SysFileController.class); + + @Autowired + private ISysFileService sysFileService; + + /** + * 文件上传请求 + */ + @PostMapping("/upload") + public Result upload (@RequestPart(value = "file") MultipartFile file) { + try { + // 上传并返回访问地址 + String url = sysFileService.uploadFile(file); + SysFile sysFile = new SysFile(); + sysFile.setName(FileUtils.getName(url)); + sysFile.setUrl(url); + return Result.success(sysFile); + } catch (Exception e) { + log.error("上传文件失败", e); + return Result.error(e.getMessage()); + } + } +} diff --git a/src/main/java/com/muyu/file/service/ISysFileService.java b/src/main/java/com/muyu/file/service/ISysFileService.java new file mode 100644 index 0000000..416c26c --- /dev/null +++ b/src/main/java/com/muyu/file/service/ISysFileService.java @@ -0,0 +1,21 @@ +package com.muyu.file.service; + +import org.springframework.web.multipart.MultipartFile; + +/** + * 文件上传接口 + * + * @author muyu + */ +public interface ISysFileService { + /** + * 文件上传接口 + * + * @param file 上传的文件 + * + * @return 访问地址 + * + * @throws Exception + */ + public String uploadFile (MultipartFile file) throws Exception; +} diff --git a/src/main/java/com/muyu/file/service/LocalSysFileServiceImpl.java b/src/main/java/com/muyu/file/service/LocalSysFileServiceImpl.java new file mode 100644 index 0000000..f3ce089 --- /dev/null +++ b/src/main/java/com/muyu/file/service/LocalSysFileServiceImpl.java @@ -0,0 +1,50 @@ +package com.muyu.file.service; + +import com.muyu.file.utils.FileUploadUtils; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Primary; +import org.springframework.stereotype.Service; +import org.springframework.web.multipart.MultipartFile; + +/** + * 本地文件存储 + * + * @author muyu + */ +@Primary +@Service +public class LocalSysFileServiceImpl implements ISysFileService { + /** + * 资源映射路径 前缀 + */ + @Value("${file.prefix}") + public String localFilePrefix; + + /** + * 域名或本机访问地址 + */ + @Value("${file.domain}") + public String domain; + + /** + * 上传文件存储在本地的根路径 + */ + @Value("${file.path}") + private String localFilePath; + + /** + * 本地文件上传接口 + * + * @param file 上传的文件 + * + * @return 访问地址 + * + * @throws Exception + */ + @Override + public String uploadFile (MultipartFile file) throws Exception { + String name = FileUploadUtils.upload(localFilePath, file); + String url = domain + localFilePrefix + name; + return url; + } +} diff --git a/src/main/java/com/muyu/file/service/MinioSysFileServiceImpl.java b/src/main/java/com/muyu/file/service/MinioSysFileServiceImpl.java new file mode 100644 index 0000000..9a50de4 --- /dev/null +++ b/src/main/java/com/muyu/file/service/MinioSysFileServiceImpl.java @@ -0,0 +1,50 @@ +package com.muyu.file.service; + +import com.alibaba.nacos.common.utils.IoUtils; +import com.muyu.file.config.MinioConfig; +import com.muyu.file.utils.FileUploadUtils; +import io.minio.MinioClient; +import io.minio.PutObjectArgs; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.web.multipart.MultipartFile; + +import java.io.InputStream; + +/** + * Minio 文件存储 + * + * @author muyu + */ +@Service +public class MinioSysFileServiceImpl implements ISysFileService { + @Autowired + private MinioConfig minioConfig; + + @Autowired + private MinioClient client; + + /** + * Minio文件上传接口 + * + * @param file 上传的文件 + * + * @return 访问地址 + * + * @throws Exception + */ + @Override + public String uploadFile (MultipartFile file) throws Exception { + String fileName = FileUploadUtils.extractFilename(file); + InputStream inputStream = file.getInputStream(); + PutObjectArgs args = PutObjectArgs.builder() + .bucket(minioConfig.getBucketName()) + .object(fileName) + .stream(inputStream, file.getSize(), -1) + .contentType(file.getContentType()) + .build(); + client.putObject(args); + IoUtils.closeQuietly(inputStream); + return minioConfig.getUrl() + "/" + minioConfig.getBucketName() + "/" + fileName; + } +} diff --git a/src/main/java/com/muyu/file/utils/FileUploadUtils.java b/src/main/java/com/muyu/file/utils/FileUploadUtils.java new file mode 100644 index 0000000..0a48cbf --- /dev/null +++ b/src/main/java/com/muyu/file/utils/FileUploadUtils.java @@ -0,0 +1,163 @@ +package com.muyu.file.utils; + +import com.muyu.common.core.exception.file.FileException; +import com.muyu.common.core.exception.file.FileNameLengthLimitExceededException; +import com.muyu.common.core.exception.file.FileSizeLimitExceededException; +import com.muyu.common.core.exception.file.InvalidExtensionException; +import com.muyu.common.core.utils.DateUtils; +import com.muyu.common.core.utils.StringUtils; +import com.muyu.common.core.utils.file.FileTypeUtils; +import com.muyu.common.core.utils.file.MimeTypeUtils; +import com.muyu.common.core.utils.uuid.Seq; +import org.apache.commons.io.FilenameUtils; +import org.springframework.web.multipart.MultipartFile; + +import java.io.File; +import java.io.IOException; +import java.nio.file.Paths; +import java.util.Objects; + +/** + * 文件上传工具类 + * + * @author muyu + */ +public class FileUploadUtils { + /** + * 默认大小 50M + */ + public static final long DEFAULT_MAX_SIZE = 50 * 1024 * 1024; + + /** + * 默认的文件名最大长度 100 + */ + public static final int DEFAULT_FILE_NAME_LENGTH = 100; + + /** + * 根据文件路径上传 + * + * @param baseDir 相对应用的基目录 + * @param file 上传的文件 + * + * @return 文件名称 + * + * @throws IOException + */ + public static final String upload (String baseDir, MultipartFile file) throws IOException { + try { + return upload(baseDir, file, MimeTypeUtils.DEFAULT_ALLOWED_EXTENSION); + } catch (FileException fe) { + throw new IOException(fe.getDefaultMessage(), fe); + } catch (Exception e) { + throw new IOException(e.getMessage(), e); + } + } + + /** + * 文件上传 + * + * @param baseDir 相对应用的基目录 + * @param file 上传的文件 + * @param allowedExtension 上传文件类型 + * + * @return 返回上传成功的文件名 + * + * @throws FileSizeLimitExceededException 如果超出最大大小 + * @throws FileNameLengthLimitExceededException 文件名太长 + * @throws IOException 比如读写文件出错时 + * @throws InvalidExtensionException 文件校验异常 + */ + public static final String upload (String baseDir, MultipartFile file, String[] allowedExtension) + throws FileSizeLimitExceededException, IOException, FileNameLengthLimitExceededException, + InvalidExtensionException { + int fileNamelength = Objects.requireNonNull(file.getOriginalFilename()).length(); + if (fileNamelength > FileUploadUtils.DEFAULT_FILE_NAME_LENGTH) { + throw new FileNameLengthLimitExceededException(FileUploadUtils.DEFAULT_FILE_NAME_LENGTH); + } + + assertAllowed(file, allowedExtension); + + String fileName = extractFilename(file); + + String absPath = getAbsoluteFile(baseDir, fileName).getAbsolutePath(); + file.transferTo(Paths.get(absPath)); + return getPathFileName(fileName); + } + + /** + * 编码文件名 + */ + public static final String extractFilename (MultipartFile file) { + return StringUtils.format("{}/{}_{}.{}", DateUtils.datePath(), + FilenameUtils.getBaseName(file.getOriginalFilename()), Seq.getId(Seq.uploadSeqType), FileTypeUtils.getExtension(file)); + } + + private static final File getAbsoluteFile (String uploadDir, String fileName) throws IOException { + File desc = new File(uploadDir + File.separator + fileName); + + if (!desc.exists()) { + if (!desc.getParentFile().exists()) { + desc.getParentFile().mkdirs(); + } + } + return desc.isAbsolute() ? desc : desc.getAbsoluteFile(); + } + + private static final String getPathFileName (String fileName) throws IOException { + String pathFileName = "/" + fileName; + return pathFileName; + } + + /** + * 文件大小校验 + * + * @param file 上传的文件 + * + * @throws FileSizeLimitExceededException 如果超出最大大小 + * @throws InvalidExtensionException 文件校验异常 + */ + public static final void assertAllowed (MultipartFile file, String[] allowedExtension) + throws FileSizeLimitExceededException, InvalidExtensionException { + long size = file.getSize(); + if (size > DEFAULT_MAX_SIZE) { + throw new FileSizeLimitExceededException(DEFAULT_MAX_SIZE / 1024 / 1024); + } + + String fileName = file.getOriginalFilename(); + String extension = FileTypeUtils.getExtension(file); + if (allowedExtension != null && !isAllowedExtension(extension, allowedExtension)) { + if (allowedExtension == MimeTypeUtils.IMAGE_EXTENSION) { + throw new InvalidExtensionException.InvalidImageExtensionException(allowedExtension, extension, + fileName); + } else if (allowedExtension == MimeTypeUtils.FLASH_EXTENSION) { + throw new InvalidExtensionException.InvalidFlashExtensionException(allowedExtension, extension, + fileName); + } else if (allowedExtension == MimeTypeUtils.MEDIA_EXTENSION) { + throw new InvalidExtensionException.InvalidMediaExtensionException(allowedExtension, extension, + fileName); + } else if (allowedExtension == MimeTypeUtils.VIDEO_EXTENSION) { + throw new InvalidExtensionException.InvalidVideoExtensionException(allowedExtension, extension, + fileName); + } else { + throw new InvalidExtensionException(allowedExtension, extension, fileName); + } + } + } + + /** + * 判断MIME类型是否是允许的MIME类型 + * + * @param extension 上传文件类型 + * @param allowedExtension 允许上传文件类型 + * + * @return true/false + */ + public static final boolean isAllowedExtension (String extension, String[] allowedExtension) { + for (String str : allowedExtension) { + if (str.equalsIgnoreCase(extension)) { + return true; + } + } + return false; + } +} diff --git a/src/main/resources/banner.txt b/src/main/resources/banner.txt new file mode 100644 index 0000000..0dd5eee --- /dev/null +++ b/src/main/resources/banner.txt @@ -0,0 +1,2 @@ +Spring Boot Version: ${spring-boot.version} +Spring Application Name: ${spring.application.name} diff --git a/src/main/resources/bootstrap.yml b/src/main/resources/bootstrap.yml new file mode 100644 index 0000000..9d81922 --- /dev/null +++ b/src/main/resources/bootstrap.yml @@ -0,0 +1,47 @@ +# Tomcat +server: + port: 9300 + +# nacos线上地址 +nacos: + addr: 106.15.36.123:8848 + user-name: nacos + password: nacos + namespace: 3cc549bc-5e87-4246-a701-7a1edd9b5433 + +# Spring +spring: + application: + # 应用名称 + name: cloud-file + profiles: + # 环境配置 + active: dev + cloud: + nacos: + discovery: + # 服务注册地址 + server-addr: ${nacos.addr} + # nacos用户名 + username: ${nacos.user-name} + # nacos密码 + password: ${nacos.password} + # 命名空间 + namespace: ${nacos.namespace} + config: + # 服务注册地址 + server-addr: ${nacos.addr} + # nacos用户名 + username: ${nacos.user-name} + # nacos密码 + password: ${nacos.password} + # 命名空间 + namespace: ${nacos.namespace} + # 配置文件格式 + file-extension: yml + # 共享配置 + shared-configs: + # 系统共享配置 + - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension} + # 系统环境Config共享配置 + - application-config-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension} diff --git a/src/main/resources/logback/dev.xml b/src/main/resources/logback/dev.xml new file mode 100644 index 0000000..30606f7 --- /dev/null +++ b/src/main/resources/logback/dev.xml @@ -0,0 +1,74 @@ + + + + + + + + + + + ${log.pattern} + + + + + + ${log.path}/info.log + + + + ${log.path}/info.%d{yyyy-MM-dd}.log + + 60 + + + ${log.pattern} + + + + INFO + + ACCEPT + + DENY + + + + + ${log.path}/error.log + + + + ${log.path}/error.%d{yyyy-MM-dd}.log + + 60 + + + ${log.pattern} + + + + ERROR + + ACCEPT + + DENY + + + + + + + + + + + + + + + + + + diff --git a/src/main/resources/logback/prod.xml b/src/main/resources/logback/prod.xml new file mode 100644 index 0000000..151a3cb --- /dev/null +++ b/src/main/resources/logback/prod.xml @@ -0,0 +1,88 @@ + + + + + + + + + + + + ${log.pattern} + + + + + + ${log.path}/info.log + + + + ${log.path}/info.%d{yyyy-MM-dd}.log + + 60 + + + ${log.pattern} + + + + INFO + + ACCEPT + + DENY + + + + + ${log.path}/error.log + + + + ${log.path}/error.%d{yyyy-MM-dd}.log + + 60 + + + ${log.pattern} + + + + ERROR + + ACCEPT + + DENY + + + + + + + + ${log.sky.pattern} + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/main/resources/logback/test.xml b/src/main/resources/logback/test.xml new file mode 100644 index 0000000..151a3cb --- /dev/null +++ b/src/main/resources/logback/test.xml @@ -0,0 +1,88 @@ + + + + + + + + + + + + ${log.pattern} + + + + + + ${log.path}/info.log + + + + ${log.path}/info.%d{yyyy-MM-dd}.log + + 60 + + + ${log.pattern} + + + + INFO + + ACCEPT + + DENY + + + + + ${log.path}/error.log + + + + ${log.path}/error.%d{yyyy-MM-dd}.log + + 60 + + + ${log.pattern} + + + + ERROR + + ACCEPT + + DENY + + + + + + + + ${log.sky.pattern} + + + + + + + + + + + + + + + + + + + + + + + diff --git a/target/classes/banner.txt b/target/classes/banner.txt new file mode 100644 index 0000000..0dd5eee --- /dev/null +++ b/target/classes/banner.txt @@ -0,0 +1,2 @@ +Spring Boot Version: ${spring-boot.version} +Spring Application Name: ${spring.application.name} diff --git a/target/classes/bootstrap.yml b/target/classes/bootstrap.yml new file mode 100644 index 0000000..9d81922 --- /dev/null +++ b/target/classes/bootstrap.yml @@ -0,0 +1,47 @@ +# Tomcat +server: + port: 9300 + +# nacos线上地址 +nacos: + addr: 106.15.36.123:8848 + user-name: nacos + password: nacos + namespace: 3cc549bc-5e87-4246-a701-7a1edd9b5433 + +# Spring +spring: + application: + # 应用名称 + name: cloud-file + profiles: + # 环境配置 + active: dev + cloud: + nacos: + discovery: + # 服务注册地址 + server-addr: ${nacos.addr} + # nacos用户名 + username: ${nacos.user-name} + # nacos密码 + password: ${nacos.password} + # 命名空间 + namespace: ${nacos.namespace} + config: + # 服务注册地址 + server-addr: ${nacos.addr} + # nacos用户名 + username: ${nacos.user-name} + # nacos密码 + password: ${nacos.password} + # 命名空间 + namespace: ${nacos.namespace} + # 配置文件格式 + file-extension: yml + # 共享配置 + shared-configs: + # 系统共享配置 + - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension} + # 系统环境Config共享配置 + - application-config-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension} diff --git a/target/classes/com/muyu/file/CloudFileApplication.class b/target/classes/com/muyu/file/CloudFileApplication.class new file mode 100644 index 0000000..40a09ee Binary files /dev/null and b/target/classes/com/muyu/file/CloudFileApplication.class differ diff --git a/target/classes/com/muyu/file/config/MinioConfig.class b/target/classes/com/muyu/file/config/MinioConfig.class new file mode 100644 index 0000000..72a6551 Binary files /dev/null and b/target/classes/com/muyu/file/config/MinioConfig.class differ diff --git a/target/classes/com/muyu/file/config/ResourcesConfig.class b/target/classes/com/muyu/file/config/ResourcesConfig.class new file mode 100644 index 0000000..579424e Binary files /dev/null and b/target/classes/com/muyu/file/config/ResourcesConfig.class differ diff --git a/target/classes/com/muyu/file/controller/SysFileController.class b/target/classes/com/muyu/file/controller/SysFileController.class new file mode 100644 index 0000000..f852fd9 Binary files /dev/null and b/target/classes/com/muyu/file/controller/SysFileController.class differ diff --git a/target/classes/com/muyu/file/service/ISysFileService.class b/target/classes/com/muyu/file/service/ISysFileService.class new file mode 100644 index 0000000..acf5722 Binary files /dev/null and b/target/classes/com/muyu/file/service/ISysFileService.class differ diff --git a/target/classes/com/muyu/file/service/LocalSysFileServiceImpl.class b/target/classes/com/muyu/file/service/LocalSysFileServiceImpl.class new file mode 100644 index 0000000..92e8f5b Binary files /dev/null and b/target/classes/com/muyu/file/service/LocalSysFileServiceImpl.class differ diff --git a/target/classes/com/muyu/file/service/MinioSysFileServiceImpl.class b/target/classes/com/muyu/file/service/MinioSysFileServiceImpl.class new file mode 100644 index 0000000..5619ced Binary files /dev/null and b/target/classes/com/muyu/file/service/MinioSysFileServiceImpl.class differ diff --git a/target/classes/com/muyu/file/utils/FileUploadUtils.class b/target/classes/com/muyu/file/utils/FileUploadUtils.class new file mode 100644 index 0000000..21df2c1 Binary files /dev/null and b/target/classes/com/muyu/file/utils/FileUploadUtils.class differ diff --git a/target/classes/logback/dev.xml b/target/classes/logback/dev.xml new file mode 100644 index 0000000..30606f7 --- /dev/null +++ b/target/classes/logback/dev.xml @@ -0,0 +1,74 @@ + + + + + + + + + + + ${log.pattern} + + + + + + ${log.path}/info.log + + + + ${log.path}/info.%d{yyyy-MM-dd}.log + + 60 + + + ${log.pattern} + + + + INFO + + ACCEPT + + DENY + + + + + ${log.path}/error.log + + + + ${log.path}/error.%d{yyyy-MM-dd}.log + + 60 + + + ${log.pattern} + + + + ERROR + + ACCEPT + + DENY + + + + + + + + + + + + + + + + + + diff --git a/target/classes/logback/prod.xml b/target/classes/logback/prod.xml new file mode 100644 index 0000000..151a3cb --- /dev/null +++ b/target/classes/logback/prod.xml @@ -0,0 +1,88 @@ + + + + + + + + + + + + ${log.pattern} + + + + + + ${log.path}/info.log + + + + ${log.path}/info.%d{yyyy-MM-dd}.log + + 60 + + + ${log.pattern} + + + + INFO + + ACCEPT + + DENY + + + + + ${log.path}/error.log + + + + ${log.path}/error.%d{yyyy-MM-dd}.log + + 60 + + + ${log.pattern} + + + + ERROR + + ACCEPT + + DENY + + + + + + + + ${log.sky.pattern} + + + + + + + + + + + + + + + + + + + + + + + diff --git a/target/classes/logback/test.xml b/target/classes/logback/test.xml new file mode 100644 index 0000000..151a3cb --- /dev/null +++ b/target/classes/logback/test.xml @@ -0,0 +1,88 @@ + + + + + + + + + + + + ${log.pattern} + + + + + + ${log.path}/info.log + + + + ${log.path}/info.%d{yyyy-MM-dd}.log + + 60 + + + ${log.pattern} + + + + INFO + + ACCEPT + + DENY + + + + + ${log.path}/error.log + + + + ${log.path}/error.%d{yyyy-MM-dd}.log + + 60 + + + ${log.pattern} + + + + ERROR + + ACCEPT + + DENY + + + + + + + + ${log.sky.pattern} + + + + + + + + + + + + + + + + + + + + + + + diff --git a/target/cloud-modules-file.jar b/target/cloud-modules-file.jar new file mode 100644 index 0000000..727e244 Binary files /dev/null and b/target/cloud-modules-file.jar differ diff --git a/target/cloud-modules-file.jar.original b/target/cloud-modules-file.jar.original new file mode 100644 index 0000000..c0a21ff Binary files /dev/null and b/target/cloud-modules-file.jar.original differ diff --git a/target/maven-archiver/pom.properties b/target/maven-archiver/pom.properties new file mode 100644 index 0000000..e9c1eb6 --- /dev/null +++ b/target/maven-archiver/pom.properties @@ -0,0 +1,3 @@ +artifactId=cloud-modules-file +groupId=com.muyu +version=3.6.3 diff --git a/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst b/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst new file mode 100644 index 0000000..088090e --- /dev/null +++ b/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst @@ -0,0 +1,8 @@ +com\muyu\file\CloudFileApplication.class +com\muyu\file\service\MinioSysFileServiceImpl.class +com\muyu\file\controller\SysFileController.class +com\muyu\file\service\ISysFileService.class +com\muyu\file\utils\FileUploadUtils.class +com\muyu\file\service\LocalSysFileServiceImpl.class +com\muyu\file\config\MinioConfig.class +com\muyu\file\config\ResourcesConfig.class diff --git a/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst b/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst new file mode 100644 index 0000000..13c0499 --- /dev/null +++ b/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst @@ -0,0 +1,8 @@ +D:\专高6\专高6\zy-cloud\cloud-modules-file\src\main\java\com\muyu\file\CloudFileApplication.java +D:\专高6\专高6\zy-cloud\cloud-modules-file\src\main\java\com\muyu\file\config\MinioConfig.java +D:\专高6\专高6\zy-cloud\cloud-modules-file\src\main\java\com\muyu\file\config\ResourcesConfig.java +D:\专高6\专高6\zy-cloud\cloud-modules-file\src\main\java\com\muyu\file\controller\SysFileController.java +D:\专高6\专高6\zy-cloud\cloud-modules-file\src\main\java\com\muyu\file\service\ISysFileService.java +D:\专高6\专高6\zy-cloud\cloud-modules-file\src\main\java\com\muyu\file\service\LocalSysFileServiceImpl.java +D:\专高6\专高6\zy-cloud\cloud-modules-file\src\main\java\com\muyu\file\service\MinioSysFileServiceImpl.java +D:\专高6\专高6\zy-cloud\cloud-modules-file\src\main\java\com\muyu\file\utils\FileUploadUtils.java