English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Implementación de la función de carga y descarga de archivos en spring mvc

Este artículo comparte con ustedes el código específico de implementación de la función de subida y descarga de archivos en spring mvc, a modo de referencia, el contenido específico es el siguiente

Subida de archivos

En pom.xml, introduzca spring mvc y commons-jar relacionados con fileupload

  <!-- spring mvc -->
  dependency>
   <groupId>org.springframework</groupId>
   <artifactId>spring-webmvc</artifactId>
   <version>4.3.13.RELEASE</version>
  </dependency>
  <!-- Subida y descarga de archivos -->
  dependency>
   <groupId>commons-fileupload</groupId>
   <artifactId>commons-fileupload</artifactId>
   <version>1.3.3</version>
  </dependency>

Añadir configuraciones relacionadas con la subida de archivos en springmvc.xml

 <bean id="multipartResolver" 
  class="org.springframework.web.multipart.commons.CommonsMultipartResolver"> 
  <!-- Tamaño máximo del archivo subido, en bytes (10MB) -->
  <property name="maxUploadSize"> 
   <value>10485760</value> 
  </property> 
  <!-- Formato de codificación de la solicitud, debe coincidir con el atributo pageEncoding de jSP para leer correctamente el contenido del formulario, el valor predeterminado es ISO-8859-1 -->
  <property name="defaultEncoding">
   <value>UTF-8</value>
  </property>
 </bean>

Añadir formulario en el archivo jsp

<form action="upload" enctype="multipart/form-data" method="post">
 <table>
  <tr>
   <td>Descripción del archivo:</td>
   <td><input type="text" name="description"></td>
  </tr>
  <tr>
   <td>Seleccione archivo:</td>
   <td><input type="file" name="file"></td>
  </tr>
  <tr>
   <td><input type="submit" value="Subir"></td>
  </tr>
 </table>
</form>

Agregar método de subida de archivo

//El archivo subido se bindará automáticamente a MultipartFile
@RequestMapping(value="/upload",method=RequestMethod.POST)
public String upload(HttpServletRequest request,
  @RequestParam("description") String description,
  @RequestParam("file") MultipartFile file) throws Exception {
 //Si el archivo no está vacío, escribe la ruta de subida
 if(!file.isEmpty()) {
  //Ruta de archivo subido
  String path = request.getServletContext().getRealPath("/file/");
  //Nombre del archivo subido
  String filename = file.getOriginalFilename();
  File filepath = new File(path,filename);
  //判断路径是否存在,如果不存在就创建一个
  if (!filepath.getParentFile().exists()) {
   filepath.getParentFile().mkdirs();
  }
  //Guardar el archivo subido en un archivo de destino
  file.transferTo(new File(path + File.separator + filename));
  return "success";
 } else {
  return "error";
 }
}

Esto es todo el contenido de este artículo, espero que sea útil para su aprendizaje y que todos los ayuden a apoyar y alentar el tutorial.

Declaración: el contenido de este artículo se obtiene de la red, pertenece al autor original, el contenido se contribuye y carga de manera autónoma por los usuarios de Internet, este sitio no posee los derechos de propiedad, no ha sido editado por humanos y no asume ninguna responsabilidad legal relacionada. Si encuentra contenido sospechoso de infracción de derechos de autor, por favor envíe un correo electrónico a: notice#oldtoolbag.com (al enviar un correo electrónico, reemplace # con @ para denunciar, y proporcione evidencia relevante. Una vez verificada, este sitio eliminará inmediatamente el contenido sospechoso de infracción de derechos de autor.)

Te gustará