⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 upfileaction.java

📁 实现一个J2EE上传功能完整的源代码
💻 JAVA
字号:
package com.action;import java.io.File;import java.io.FileOutputStream;import java.io.IOException;import java.io.InputStream;import java.sql.ResultSet;import javax.servlet.ServletException;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import org.apache.struts.action.Action;import org.apache.struts.action.ActionForm;import org.apache.struts.action.ActionForward;import org.apache.struts.action.ActionMapping;import org.apache.struts.action.ActionMessage;import org.apache.struts.action.ActionMessages;import org.apache.struts.upload.FormFile;import com.actionForm.UpFileForm;import com.dao.DB;public class UpFileAction extends Action {	public ActionForward execute(ActionMapping mapping, ActionForm form,			HttpServletRequest request, HttpServletResponse response)			throws IOException, ServletException {		DB mydb = new DB();		String target = "over";		String sql = "";		ActionMessages messages = new ActionMessages();		UpFileForm upfileform = (UpFileForm) form;		FormFile upfile = upfileform.getUpfile();		String filename = upfileform.getFname();		int filesize = upfileform.getFsize();		String filetype = upfileform.getFtype();		String fileinfo = upfileform.getFinfo();		sql = "insert into b_file(fname,ftype,fsize,finfo) values('" + filename				+ "','" + filetype + "','" + filesize + "','" + fileinfo + "')";		int i = mydb.add(sql);		if (i <= 0) {			messages.add("fileM", new ActionMessage("file.up.F"));			saveErrors(request, messages);			return mapping.findForward(target);		}		sql = "select MAX(fid) from b_file as maxid";		ResultSet rsmax = mydb.seach(sql);		int fileid = -1;		try {			rsmax.next();			fileid = rsmax.getInt(1);		} catch (Exception e) {			e.printStackTrace();		}		String upname = "";		String endname = filename.substring(filename.indexOf("."));		upname = fileid + endname;		byte a[] = new byte[filesize];		File file = new File(servlet.getServletContext().getRealPath("/file"),				upname);		FileOutputStream outfile = new FileOutputStream(file);		InputStream input = upfile.getInputStream();		int allread = 0;		int subread = 0;		while (allread < filesize) {			subread = input.read(a, allread, filesize);			allread += subread;		}		outfile.write(a);		outfile.close();		input.close();		messages.add("fileM", new ActionMessage("file.up.S"));		saveErrors(request, messages);		return mapping.findForward(target);	}}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -