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

Implementação da função de upload e download de arquivos no Spring MVC

Este artigo compartilha com vocês o código específico da implementação de upload e download de arquivos do spring mvc, para referência, os detalhes são os seguintes

Upload de arquivo

Introduzir spring mvc e commons no pom.xml-o jar relacionado ao fileupload

  <!-- spring mvc -->
  dependency>
   <groupId>org.springframework</groupId>
   <artifactId>spring-webmvc</artifactId>
   <version>4.3.13.RELEASE</version>
  </dependency>
  <!-- Upload e download de arquivo -->
  dependency>
   <groupId>commons-fileupload</groupId>
   <artifactId>commons-fileupload</artifactId>
   <version>1.3.3</version>
  </dependency>

Adicionar configurações de upload de arquivo no springmvc.xml

 <bean id="multipartResolver" 
  class="org.springframework.web.multipart.commons.CommonsMultipartResolver"> 
  <!-- O limite de tamanho do upload de arquivo, em bytes (10MB) -->
  <property name="maxUploadSize"> 
   <value>10485760</value> 
  </property> 
  <!-- O formato de codificação da solicitação, deve ser consistente com o atributo pageEncoding do jSP para ler corretamente o conteúdo do formulário, o padrão é ISO-8859-1 -->
  <property name="defaultEncoding">
   <value>UTF-8</value>
  </property>
 </bean>

Adicionar formulário no arquivo jsp

<form action="upload" enctype="multipart/form-data" method="post">
 <table>
  <tr>
   <td>Descrição do arquivo:</td>
   <td><input type="text" name="description"></td>
  </tr>
  <tr>
   <td>Selecione o arquivo:</td>
   <td><input type="file" name="file"></td>
  </tr>
  <tr>
   <td><input type="submit" value="Upload"></td>
  </tr>
 </table>
</form>

Adicionar método de upload de arquivo

//O upload de arquivos será automaticamente ligado ao MultipartFile
@RequestMapping(value="/upload",method=RequestMethod.POST)
public String upload(HttpServletRequest request,
  @RequestParam("description") String description,
  @RequestParam("file") MultipartFile file) throws Exception {
 //Se o arquivo não estiver vazio, escrever o caminho do upload
 if(!file.isEmpty()) {
  //Caminho do arquivo upload
  String path = request.getServletContext().getRealPath("/file/");
  //Nome do arquivo upload
  String filename = file.getOriginalFilename();
  File filepath = new File(path,filename);
  //Verificar se o caminho existe, criar um se não existir
  if (!filepath.getParentFile().exists()) {
   filepath.getParentFile().mkdirs();
  }
  //Salvar o arquivo upload em um arquivo de destino
  file.transferTo(new File(path + File.separator + filename));
  return "success";
 } else {
  return "error";
 }
}

Isso é tudo o que há no artigo. Esperamos que isso ajude no seu aprendizado e que você apoie o tutorial de clamor.

Declaração: o conteúdo deste artigo é extraído da internet, pertencente ao respectivo proprietário. O conteúdo é contribuído e carregado voluntariamente pelos usuários da internet. Este site não possui direitos de propriedade, não foi editado manualmente e não assume responsabilidades legais relacionadas. Se você encontrar conteúdo suspeito de violação de direitos autorais, por favor, envie um e-mail para: notice#oldtoolbag.com (ao enviar e-mail, substitua # por @ para denunciar e forneça provas relevantes. Caso seja confirmado, o site deletará imediatamente o conteúdo suspeito de violação de direitos autorais.)

Você também pode gostar