Este artigo compartilha o código específico de como o Java recebe upload de arquivo iOS para sua referência. O conteúdo específico é o seguinte
IOS Multipart/Form-Data Post Solicy Java Background Spring Interface mantém o erro. Após dois dias de trabalho, finalmente resolveu e acumulou
package com.xx.controller;import java.io.FileOutputStream;import java.io.IOException;import java.io.InputStream;import java.util.Iterator;import java.util.LinkedList;import java.util.List;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.httpServletResponse; importar org.apache.commons.fileupload.fileitem; importar org.apache.commons.fileupload.fileuploadexception; import org.apache.commons.fileUpload.disk.disk.disk.disk.disk.disk.disk.disk.disk.disksisk; org.apache.commons.fileupload.servlet.servletfileUpload; importar org.springframework.tereotype.controller; importar org.springframework.web.bind.annotation.requestmapping; importação de org.springfReth.webind.webind.bind.requestmapping; org.springframework.web.bind.annotation.Responsebody; importar com.nupaapp.model.filemeta;@controlador@requestmapp ("/controlador") classe public file1controller {linkedlist <fileMeta> arquivos = new LinkedList <FileMeta> (); Filemeta filemeta = nulo; /******************************************************************* @THOWS IoException*@Throws fileUploadexception *********************************************** {boolean ismultipart = servletfileUpload.ismultipartContent (request); // determine se é o tipo de arquivo de formulário DiskFileItemFactory Factory = new DiskFileItemFactory (); ServletfileUpload sfu = new ServletFileUpload (fábrica); Listar itens = sfu.parserequest (request); // Obtenha uma lista de todos os campos carregados da solicitação para (iterator iter = items.iterator (); iter.hasnext ();) {fileItem fileItem = (fileItem) iter.next (); if (! fileItem.isformfield () && fileItem! = null) {// a interpretação não é um campo de formulário comum ou um arquivo // opera as etapas do arquivo do item do arquivo para obter o tamanho e o caminho // definir o caminho da imagem String iMgpath = "e:" + System.currentTimEmillis () + ".jpg"; // Defina o fluxo de imagem inputStream FIN = FILEITEM.GETINPUPTSTREAM (); // Defina o fluxo de saída da imagem FileOutputStream fout = new FileOutputStream (imgPath); // escreva o arquivo byte [] b = novo byte [1024]; int length = 0; while ((comprimento = fin.read (b))> 0) {fout.Write (b, 0, comprimento); } // Fechar o fluxo de dados fin.close (); fout.close (); }} retornar "200"; }}pom.xml Add
<!-Isso é usado para operação da ferramenta de upload de arquivos-> <Ependence> <PuerpId> Commons-FileUpload </GroupId> <TRAFACTID> Commons-FileUpload </ArtifactId> <Version> 1.3.1 </suSERFACTIDE> </dependency> <Pepency> <GroupId> commons-i </GroupId> <suSerfactid> </dependency> <Depency> <Grupo> commons-IO </Groupid> <stersfactid> </dependency>
spring-config.xml Adicionar feijão
<!- Upload do arquivo de configuração. Se você não usar o upload do arquivo, não precisará configurá -lo. Obviamente, se você não corresponder, não há necessidade de introduzir o pacote de componentes de upload no arquivo de configuração-> <bean id = "multipartreSolver"> <!-codificação padrão-> <names name = "defaultEncoding" value = "utf-8" /> <!-Tamanho do arquivo maximum-> <nome da 5. Valor na memória-> <propriedade name = "maxinMemorySize" value = "40960" /> </sien>
O exposto acima é todo o conteúdo deste artigo. Espero que seja útil para o aprendizado de todos e espero que todos apoiem mais o wulin.com.