Im Allgemeinen gibt es zwei Möglichkeiten, Bilder hochzuladen. Die in der Datenbank geschriebenen Bilddateien müssen in ein Binärstromformat konvertiert werden, das den Datenbankraum einnimmt und zum Beispiel für die Speicherung einer kleinen Anzahl von Bildern geeignet ist. dass sie relativ sicher sind und von Benutzern nicht leicht vermieden werden.
Implementiert in Struts2 (Bildaufladen von Bild als Beispiel)
1. Die Liste von FileUpload.jsp -Code lautet wie folgt:
<%@ page Language = "java" import = "java.util. head> <title> Die FileUplaodDemo in Struts2 </title> </head> <body> <s: Form Action = "FileUpload" methode = "post" engTepe = "MultiPart/Form-Data" Name Space = "/" <s: Dateiname = "myFile" label = "myFile"> </s: Datei> <s: textField name = "caption" label = "caption"> </s: textField> <s: subieren label = " ">/s: subieren> </s: Formular> </body> </html>
2. Die Funktionsliste von ShowUpload.jsp lautet wie folgt:
<%@ page Language = "java" import = "java.util. head> <title> showUpload </title> </head> <body> <div style = "padding: 3px; border: solid 1px #ccccc; text-align: center"> <img src = "uploadima GES/<S : Eigenschaft value = "ImageFileName"/> "/> <br/> <s: Eigenschaftswert =" caption "/> </div>/body> </html>
3. Die Codeliste von FileUploadAction.java lautet wie folgt:
Paket com.chris; import java.io. 572146812454l; private statische endgültige int buffer_size = 16 * 1024; // Beachten Sie, dass beim Hochladen der Datei <s: Datei // an MyFile gebunden ist, MyFileContentType, MyFileFileName.//so, MyFileContentType, MyFilefi muss angeboten werden, muss auf demselben, MyFilefi, auf demselben Gebot angeboten werden. Zeit Lename Set -Methode private Datei MyFile; setMyFileContentType (String contentType) {System.out .println ("Dateityp:" + contentType); ; this .FileName = Dateiname;} public void setMyFile (Datei myfile) {this .myFile = myFile;} public String getImageFileName () {ret ImageFileName;} public String getCaption () {ret urn caption;} public void setCaption (String -DepartmentCaption (String Caption) ) {this .caption = caption;} private statische void -Kopie (Datei SRC, Datei dst) {try {inputStream in = null; outputStream out = null; try {in = new BufferputStream (new FileInputStream (SRC), bu ffer_size); out = new BufferedOutputStream (new FileOutputStream (DST), Buffer_size); byte [] buffer = new byte [buffer_size]; while (in.read (buffer)> 0) {out.write (buffer);}} schließlich {if ((if ( null! Dateiname) {int pos = Dateiname.lastIndexof ("."); return FileName.substring (pos);}@oversidePublic String execute () {ImageFileName = new Date (). GetTime () + getExtentention (FileName); Datei -Bildfile = Dateifile = Neue Datei (ServletActionContext.getServletContext (). getRealPath ("UploadImages") + "/" + ImageFileName); Copy (MyFile, ImageFile); Rückgabeerfolg;}}Hinweis: Zu diesem Zeitpunkt wird nur zur Bequemlichkeit der implementierenden Aktionen die Aktionsversorgung vererbt und die Methode Overrider execute () ist
Jedes Pojo in Struts2 kann als Aktion verwendet werden
4.struts.xml list lautet wie folgt:
<? /DTDS/STRUTS-2.0.DTD "> <STRUTS> <Package name =" Beispiel "Namespace ="/"Extends =" Strus-Default "> <actionname =" FileUpload "> <Interceptor -ref name =" FileUtLoadstack " /> <Eltr EREWERN> /ShowUpload.jsp </result> </action> </package> </struts>
5. Die Liste web.xml lautet wie folgt:
<? http://www.w3.org/2001/xmlschema-instance"xsi:schemalocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/ j2ee/web-App_2_4.xsd "> <filter> <filter-name> Strus-cläen </filter-name> <filterklasse> org.apache.struts2.dispatcher.actionContextCleanUp </filter-classe> </filter> <Filter-Mapping> <Filter-Name> Struts-CleanUp </filter-name> <url-pattern>/* </url-puster> </filter- mapping> <filter> <filter-name> Struts2 </fi lter -name> <filterklasse> org.apache.struts2.dispatcher.filterDispatcher </Filter-Klasse> </filter> <filtermapping> <filter-name> Struts2 </filter-nna me> <url-pattern >/ *</url-puftern> </filtermapping> <Welcome-File-List> <Welcome-File> Index.jsp </Welcome-File> </Welcome-File-List> </web-App>
Der obige Inhalt ist der Inhalt, wie Sie Bilder in Java Struts2 hochladen, die Ihnen vorgestellt werden.