You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
test/src-源文件/main/java/com/yf/exam/config/MultipartConfig.java

67 lines
4.3 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

// 定义包路径用于存放文件上传配置类相关的代码。这个包名表明该类属于特定的项目模块com.yf.exam下的config部分
// 通常用于组织和管理与文件上传配置相关的代码。
package com.yf.exam.config;
// 导入Spring Boot中用于创建和配置多部分Multipart上传相关设置的工厂类。
// 通过这个工厂类可以方便地设置如单个文件大小限制、总上传数据大小限制等参数,
// 在本类中用于创建和配置文件上传的相关限制。
import org.springframework.boot.web.servlet.MultipartConfigFactory;
// 导入Spring框架中用于标记一个方法返回值为Spring Bean的注解。
// 被该注解标记的方法其返回值会被Spring容器管理作为一个可被注入到其他组件中的Bean实例。
// 在本类中用于将multipartConfigElement方法返回的MultipartConfigElement对象注册为Spring Bean。
import org.springframework.context.annotation.Bean;
// 导入Spring框架中用于标记一个类是配置类的注解。
// 被该注解标记的类可以在其中定义各种Bean配置方法这些方法会被Spring容器在启动时自动识别并执行
// 用于创建和配置应用程序所需的各种组件。在本类中用于标记该类为Spring配置类以便进行文件上传相关的配置。
import org.springframework.context.annotation.Configuration;
// 导入Spring框架中用于处理数据大小单位转换和表示的工具类。
// 它可以方便地将不同单位的数据大小表示转换为统一的格式,
// 在本类中用于设置文件上传的单个文件大小和总上传数据大小的限制以兆字节MB为单位进行设置。
import org.springframework.util.unit.DataSize;
// 导入Java标准库中的用于表示多部分Multipart上传配置元素的接口。
// 这个接口定义了多部分上传相关的配置参数,如文件大小限制、请求大小限制等,
// 在本类中通过MultipartConfigFactory创建并返回实现了该接口的对象以完成文件上传的配置设置。
import javax.servlet.MultipartConfigElement;
/**
* 文件上传配置类,主要功能是配置文件上传过程中的相关参数,
// 包括单个文件的最大允许大小以及整个上传请求的最大允许数据大小等。
*
* @author bool
* @date 2019-07-29 16:23
*/
@Configuration // 使用该注解标记此为Spring配置类表明这个类是用来进行Spring应用程序的配置工作的。
public class MultipartConfig {
/**
* 定义一个方法,并使用@Bean注解将其返回值声明为Spring Bean。
* 该方法用于创建并返回一个MultipartConfigElement对象这个对象包含了文件上传的具体配置参数。
*
* @return 返回一个MultipartConfigElement对象其中设置了单个文件大小和总上传数据大小的限制等配置信息。
*/
@Bean
public MultipartConfigElement multipartConfigElement() {
MultipartConfigFactory factory = new MultipartConfigFactory(); // 创建一个MultipartConfigFactory对象
// 它是用于创建MultipartConfigElement对象的工厂类
// 通过它可以方便地设置各种文件上传的配置参数。
// 设置单个文件的最大允许大小。
// 这里使用DataSize.ofMegabytes(5000L)将大小设置为5000兆字节MB
// 即限制单个上传的文件大小不能超过5000MB。
factory.setMaxFileSize(DataSize.ofMegabytes(5000L));
// 设置整个上传请求的最大允许数据大小。
// 同样使用DataSize.ofMegabytes(5000L)将大小设置为5000兆字节MB
// 也就是说整个上传请求包括可能上传的多个文件以及其他相关数据的总数据量不能超过5000MB。
factory.setMaxRequestSize(DataSize.ofMegabytes(5000L));
// 通过MultipartConfigFactory对象的createMultipartConfig方法创建并返回一个MultipartConfigElement对象
// 这个对象包含了我们刚刚设置的单个文件大小和总上传数据大小等配置信息,
// 它会被Spring容器管理并应用到文件上传的相关处理中。
return factory.createMultipartConfig();
}
}