In unserer Webentwicklung müssen wir oft einige Dateien vom Computer auf den Webserver hochladen.
Zum Beispiel: Ein BBS -System kann, wenn Benutzer dieses System verwenden, einige Bilder und Dokumente des Geräts auf den Server hochladen. Dann können andere Benutzer diese Dateien herunterladen. Auf diese Weise können wir das Datei -Upload alleine programmieren, aber es ist eine bessere Möglichkeit, einige vorhandene Komponenten zu verwenden, um uns zu helfen, diese Upload -Funktion zu erkennen.
Häufige Upload -Komponenten :
Commons FileUpload von Apache
Javazooms Uploadbean
JSPSMartUpload
FileUpload -Download -Adresse :
http://commons.apache.org/fileupload/
Download: commons-fileUpload-1.2.2 --in.zip Get: commons-fileUpload-1.2.2.jar
http://commons.apache.org/io/
Download: commons-i-1.4-imin.zip Get: commons-i-1.4.jar
Upload.jsp
Code;
<%@ page Language = "java" contentType = "text/html; charset = utf-8"%> <html> <kopf> <titels> Verwenden Sie das Überladen von Commons, um Datei hochzuladen </title> </head> <Styles>* {Schriftfamilie: "安体"; Schriftgröße: 14px} </style> <body> <p align = "center"> Bitte wählen Sie die Datei, die Sie hochladen möchten. name="name" type="text" id="name" size="20" ></td> </tr> <tr> <td>Upload file: </td> <td><input name="file" type="file" size="20" ></td> </tr> <tr> <td></td><td> <input type="submit" name="submit" value="submit" > <input type = "reset" name = "reset" value = "reset"> </td> </tr> </table> </form> </body> </html>FileUploadServlet.java Code:
Paket com.b510.example; import java.io.file; import java.io.ioxception; import Java.util. javax.servlet.http.httpServletRequest; importieren javax.servlet.http.httpservletResponse; import org.apache.commons.FileUpload.FileItem; importieren org.apache.commons.fileupload.FileUploadexception; org.apache.commons.fileupload.disk.DiskFileItemFactory;import org.apache.commons.fileupload.servlet.ServletFileUpload;/** * * @author XHW * * @date 2011-7-26 * */public class FileUploadServlet extends HttpServlet { private static final long serialVersionUID = -7744625344830285257L; private servletContex sc; private Zeichenfolge SavePath; public void dodget (httpServletRequest Request, httpServletResponse -Antwort) löst ServletException aus, ioException {Dopost (Request, Antwort); } public void init (servletConfig config) {// Ein Initialisierungsparameter in web.xml SavePath = config.getInitParameter ("SavePath"); sc = config.getServletContext (); } public void dopost (httpServletRequest Request, httpServletResponse-Antwort) löst ServletException aus, ioException {request.setcharactercoding ("utf-8"); DiskFileItemFactory factory = new diskFileItemFactory (); ServletFileUpload upload = new ServletFileUpload (fabrik); try {list items = upload.ParSerequest (Anfrage); Iterator itr = items.iterator (); while (itr.hasnext ()) {FileItem item = (FileItem) itr.next (); if (item.isformfield ()) {system.out.println ("Formular Parameter Name:" + item.getFieldName () + ", Formparameterwert:" + item.getString ("utf-8"); } else {if (item.getName ()! System.out.println ("Dateityp hochladen:" + item.getContentType ()); // item.getName () gibt den vollständigen Pfadnamen der hochgeladenen Datei im Client system.out.println ("Dateiname hochladen:" + item.getName ()) zurück; Datei tempfile = new Datei (item.getName ()); // Datei speichern Pfaddatei hochladen. item.write (Datei); Request.SetatTribute ("Upload.Message", "Das Datei -Upload war erfolgreich!"); } else {request.setAttribute ("upload.message", "Keine Upload -Datei ausgewählt!"); }}}}} catch (fileUploadexception e) {e.printstacktrace (); } catch (Ausnahme e) {e.printstacktrace (); Request.SetAttribute ("Upload.Message", "Upload -Datei fehlgeschlagen!"); } request.getRequestDispatcher ("/uploadResult.jsp"). Forward (Request, Antwort); }}UploadResult.jsp Code:
<%@ page Language = "java" import = "java.util. content = "no-cache"> <meta http-äquiv = "cache-control" content = "no-cache"> <meta http-äquiv = "läuft" content = "0"> <meta http-equiv = "keywords" content = "keyword1, keyword 2, keyword3"> <meta http-äquiv rel = "styleSheet" type = "text/css" href = "styles.css"> -> </head> <body> $ {requestScope ['Upload.Message']} <a href = "/upload/uploadFile.jsp"> Upload -Datei </a> </body> </html>> uploadFile.jsp "> Upload -Datei </a> </body> </html>web.xml
Code:
<? XSI: Schemalocation = "http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web- thisweb- this J2EE-Komponente </Beschreibung> <diageinenname> Dies ist der Anzeigename meiner J2EE-Komponente </display-name> <servlet-name> fileUploadServlet </servlet-name> <Servlet-Class> com.b510.example.FileUploadServlet </servlet-class> <! --Set initialization parameters --> <init-param> <param-name>savePath</param-name> <param-value>uploads</param-value> </init-param> </servlet> <servlet-mapping> <servlet-name>FileUploadServlet</servlet-name> <url-pattern>/servlet/fileServlet</url-pattern> </servlet-mapping> <Welcome-File-List> <Welcome-File> Index.jsp </Welcome-File> <Welcome-File> UploadFile.jsp </Welcome-File> </Welcome-File-List> </web-App>
Das obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, es wird für das Lernen aller hilfreich sein und ich hoffe, jeder wird Wulin.com mehr unterstützen.