Red de conocimiento informático - Problemas con los teléfonos móviles - Carga de múltiples archivos de Springboot

Carga de múltiples archivos de Springboot

MultipartFile proporciona los siguientes métodos para obtener información sobre los archivos cargados:

getOriginalFilename, obtiene el nombre del archivo cargado

getBytes, convierte el contenido del archivo cargado en una matriz de bytes;

getInputStream, obtiene InputStream;

isEmpty, indica que el archivo cargado está vacío o que no hay ningún archivo cargado

getSize, indica el; tamaño del archivo cargado.

transferir a (destino del archivo), guarde el archivo en el sistema de archivos de destino.

Para cargar varios archivos al mismo tiempo, utilice la clase de matriz MultipartFile para aceptar múltiples cargas de archivos:

//MultiFileUpload @RequestMapping(value = "/batch/ upload", método = RequestMethod.POST)

@ResponseBody public String handleFileUpload(solicitud HttpServletRequest){

Lista< .MultipartFile> archivos = ((MultipartHttpServletRequest) solicitud)

.getFiles("archivo");

Archivo MultipartFile = nulo;

Flujo BufferedOutputStream = nulo;

for (int i = 0; i < archivos.tamaño(); ++i) {

archivo = archivos.get(i);

if (!file.isEmpty()) {

prueba {

byte[] bytes = file.getBytes();

stream = new BufferedOutputStream(new FileOutputStream (

p>

nuevo archivo(file. getOriginalFilename())));

stream.write(bytes);

stream.close();

} catch (Excepción e) {

stream = null;

return "No pudo cargar " + i + " => " + e.getMessage( );

}

} else {

return "No pudo cargar " + i

+ " porque el archivo estaba vacío .";

}

}

}

Devuelve "Carga exitosa";

}

Puede limitar los archivos cargados por SpringBoot configurando la siguiente configuración predeterminada en application.properties:

spring.servlet.multipart.enabled=true

spring.servlet .multipart.file- size-threshold=0

spring.servlet.multipart.max-file-size=1MB

spring.servlet.multipart.max-request-size=10MB

spring.servlet.multipart.resolve-lazily=false

enable El valor predeterminado es verdadero, lo que permite cargar archivos adjuntos.

El umbral de tamaño del archivo limita la longitud del archivo cargado. Cuando el archivo excede una cierta longitud, se convertirá en un archivo temporal.

Ayuda a evitar que los archivos cargados ocupen demasiada memoria, se mide en MB o KB, el valor predeterminado es 0 y el umbral es ilimitado.

ubicación se refiere al directorio donde se almacenan los archivos temporales. Si no se configura, el servidor web proporciona un directorio temporal.

El atributo max-file-size especifica la longitud máxima de un solo archivo, el valor predeterminado es 1 MB; el atributo max-request-size describe la longitud máxima de una sola carga de solicitud HTTP, el valor predeterminado es 10 MB; .

resolver-lazily significa resolver el archivo en un archivo al acceder al archivo y los parámetros.