| 使用struts upload包进行文件上传的实例 |
| 来源:
发布时间:2007-11-19 发布人:
浏览:
人次
字体:
[大
中
小]
|
|
这里给出了自己写的一个使用struts upload包 进行文件上传的例子。
测试环境再 Tomcat 5.0.12,servlet 2.3,jsp 1.2,structs 1.1通过。
1。FileLoadAction
//-----------------------------FileLoadAction code ---------------------------------------
package structs_file_test;
import org.apache.struts.action.ActionMapping; import org.apache.struts.action.ActionForm; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.struts.action.ActionForward; import org.apache.struts.action.Action; import org.apache.struts.upload.*; import java.util.Hashtable; import java.util.Collection; import java.util.Iterator; import java.io.*;
public class FileLoadAction extends Action { private static final String FILE_SAVE_PATH="e:/"; public ActionForward execute(ActionMapping actionMapping, ActionForm actionForm, HttpServletRequest servletRequest, HttpServletResponse servletResponse) { FileLoadActionForm theForm = (FileLoadActionForm) actionForm; //获得上传文件信息 FormFile file1 = theForm.getFile1(); FormFile file2 = theForm.getFile2(); //设置文件保存的位置 String sSaveFilePath= FILE_SAVE_PATH;// servletRequest.getServletPath(); System.out.println("SaveFilePath=" + sSaveFilePath); // file1.getFileName()获得文件的名字, 没有包含文件path 信息 System.out.println("file1 ,filename=" + file1.getFileName()); System.out.println("file2 ,filename=" + file2.getFileName()); //可以把文件描述信息保存起来,保存到文件或者数据库 //theForm.getFile1_desc(); //theForm.getFile2_desc(); InputStream in = null; try { in = file1.getInputStream(); //saveToFile(in, "e:/1.txt");//for test saveToFile(in, sSaveFilePath + file1.getFileName()); } catch (Exception ex) { System.err.println("error,save first file fail!"); } try { in = file2.getInputStream(); // saveToFile(in, "e:/2.txt");//for test saveToFile(in, sSaveFilePath + file2.getFileName());
} catch (Exception ex) { System.err.println("error,save second file fail!"); } return actionMapping.findForward("home"); }
private void saveToFile(InputStream in, String sFileName) { FileOutputStream out; //这里可以保存倒数据库或者磁盘 try { out = new FileOutputStream(sFileName); byte b[] = new byte[1024]; int i = 0; while ((i = in.read(b)) > 0) { out.write(b, 0, i - 1); } out.close(); } catch (Exception ex) { System.err.println("save file=" + sFileName + " fail!" + ex.getMessage()); } } } //---------------------------------end FileLoadAction -----------------------------------------------
2.FileLoadActionForm
//---------------------FileLoadActionForm code ----------------------------------
package structs_file_test;
import javax.servlet.http.HttpServletRequest; import org.apache.struts.action.*; import org.apache.struts.upload.FormFile;
共2页: 上一页 1 [2] 下一页
| |
| |
|
|
|
|
| §最新评论:(评论内容只代表网友观点,与本站立场无关!) | |
|
|
|
|
| 注意:请勿在本站发布政治话题、色情及违反法律的内容。 |
IT知道网 声明:刊登此文章是为了传递更多信息,文章内容仅供参考,转载请注明出处。 | |
|