Cet article partage le code spécifique de la façon dont Java reçoit le téléchargement de fichiers iOS pour votre référence. Le contenu spécifique est le suivant
IOS Multipart / Form-Data Post Demande Java Background Spring Interface maintient l'erreur. Après deux jours de travail, il l'a finalement résolu et accumulé
package com.xx.Controller; import java.io.fileoutputStream; import java.io.ioException; import java.io.inputstream; import java.util.iterator; import java.util.linkedlist; javax.servlet.http.httpservletResponse; import org.apache.commons.fileupload.fileitem; import org.apache.commons.fileupload.disk.diskfileitemfactory; org.apache.commons.fileupload.servlet.servletfileupload; import org.springframework.sterreotype.controller; import org.springframework.web.bind.annotation.requestmapp org.springframework.web.bind.annotation.responsebody; import com.nupaapp.model.filemeta; @ contrôleur @ requestmapping ("/ contrôleur") public class file1Controller {linkedlist <fileMeta> files = new LinkedList <FileMeta> (); FileMeta fileMeta = null; / ********************************************************************** * URL: / rest / contrôleur / télécharge IOException * @throws fileuploadexception ******************************************************** / @RequestMapping (Value = "/ upload", méthode = requestMethod.Post) @ResponseBody Public Upload (httpservlerequest request, httpserReresponse réponse) throws ioexception, fileuprexe IsMultupart = servletFileUpload.ismulTipartContent (demande); // Déterminez s'il s'agit du type de fichier de formulaire diskfileItemfactory factory = new DiskFileItemFactory (); ServletFileUpload sfu = new ServletFileUpload (Factory); List items = sfu.parsErequest (request); // Obtenez une liste de tous les champs téléchargés à partir de la demande pour (iterator iter = items.iterator (); iter.hasnext ();) {fileItem fileitem = (fileItem) iter.next (); if (! FileItem.isformField () && fileItem! = null) {// L'interprétation n'est pas un champ de formulaire ordinaire ou un fichier // fonctionne les étapes du fichier de fichier pour obtenir la taille et le chemin // définir la chaîne de sortie de sortie de l'image imgpath = "e:" + system.currenttimemillis () + ".jpg"; // Définissez le flux d'image inputStream fin = fileItem.getInputStream (); // Définissez le flux de sortie d'image FileOutputStream fout = new FileOutputStream (IMGPATH); // Écrivez le fichier byte [] b = nouveau octet [1024]; int length = 0; while ((longueur = fin.read (b))> 0) {fout.write (b, 0, longueur); } // Fermez le flux de données fin.close (); fout.close (); }} return "200"; }}pom.xml ajouter
<! - Ceci est utilisé pour l'opération de l'outil de téléchargement de fichiers -> <dependency> <proupId> Commons-fileupload </proupId> <ArtifActid> Commons-fileupload </ artifactive> <version> 1.3.1 </ version> </ Dependency> <Dedency> <ProupId> Commons-io </proupId> <pridence> comons-io </ artifactid>
printemps-config.xml Ajouter du bean
<! - Téléchargement du fichier de configuration. Si vous n'utilisez pas de téléchargement de fichiers, vous n'avez pas besoin de le configurer. Bien sûr, si vous ne correspondez pas, il n'est pas nécessaire d'introduire le package de composant Télécharger dans le fichier de configuration -> <bean id = "MultipartResolver"> <! - Encoding par défaut -> <propriété name = "Defauntencoding" value = "utf-8" /> <! - Taille maximale du fichier -> <Propriété Name = "MAXUPLOADSIZE" Valeur = "10485760000" name = "maxinMemorySize" value = "40960" /> </bant>
Ce qui précède est tout le contenu de cet article. J'espère que cela sera utile à l'apprentissage de tous et j'espère que tout le monde soutiendra davantage Wulin.com.