<jsp:useBean id="su" scope="page" class="com.jspsmart.upload.SmartUpload" />
<%
su.initialize(pageContext);
su.upload();
int count = su.save("/upload", su.SAVE_VIRTUAL);
out.println(count+"个文件上传成功!<br>");
for (int i=0;i<su.getFiles().getCount();i++)
{
com.jspsmart.upload.File file = su.getFiles().getFile(i);
if (file.isMissing()) continue;
out.println("<br>文件名:" + file.getFileName()+" 长度:"+file.getSize());
}
%>
以上代码如何写成javabean如下形式public boolean upload() throws Exception {
.................................
}
<%
su.initialize(pageContext);
su.upload();
int count = su.save("/upload", su.SAVE_VIRTUAL);
out.println(count+"个文件上传成功!<br>");
for (int i=0;i<su.getFiles().getCount();i++)
{
com.jspsmart.upload.File file = su.getFiles().getFile(i);
if (file.isMissing()) continue;
out.println("<br>文件名:" + file.getFileName()+" 长度:"+file.getSize());
}
%>
以上代码如何写成javabean如下形式public boolean upload() throws Exception {
.................................
}
HttpServletRequest request = null;
HttpServletResponse response = null;
JspFactory _jspxFactory = null;
PageContext pageContext = null;
_jspxFactory = JspFactory.getDefaultFactory();
pageContext = _jspxFactory.getPageContext(this, request, response, "", true,
8192, true);
SmartUpload su = new SmartUpload();
su.initialize(pageContext);
su.upload();
int count = su.save("/upload", su.SAVE_VIRTUAL);
out.println(count + "个文件上传成功!<br/>");
for (int i = 0; i < su.getFiles().getCount(); i++) {
com.jspsmart.upload.File file = su.getFiles().getFile(i);
if (file.isMissing())
continue;
out.println("<br/>文件名:" + file.getFileName() + " 长度:" + file.getSize());
}
}
InputStream fileStreamIn=file.getInputStream();
OutputStream fileStreamOut=new FileOutputStream(dir+"/"+fileName);//dir为上传后文件存放的地址int bytesRead=0;
byte[]buffer=new byte[8192];
whie((bytesRead=fileStreamIn.read(buffer,0,8192))!=-1){
fileStreamOut.write(buffer,0,btyesRead);
}
fileStreamOut.close();
fileStreamIn.close();
以上程序载至Struts设计P320,
我的总结:流中读,流中写
package jspupload;import java.io.OutputStream;import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.jsp.JspFactory;
import javax.servlet.jsp.PageContext;import com.jspsmart.upload.File;
import com.jspsmart.upload.SmartUpload;
/**
* @author user
*
* TODO 要更改此生成的类型注释的模板,请转至
* 窗口 - 首选项 - Java - 代码样式 - 代码模板
*/
public class UploadServlet extends HttpServlet{
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException{
try{
OutputStream out=null;
JspFactory _jspxFactory = null;
_jspxFactory = JspFactory.getDefaultFactory();
response.setContentType("text/html;charset=utf-8");
// 新建一个SmartUpload对象
SmartUpload su = new SmartUpload();
// 上传初始化
PageContext pageContext = _jspxFactory.getPageContext(this, request, response,null, true, 8192, true);
su.initialize(pageContext);
// 将上传文件全部保存到指定目录
int count = su.save("/upload");下面的不用说拉
这句编译通不过呀!!!!!!!!!!!!!!!!!!
package cgx.run;import java.sql.*;
import java.util.Vector;
import cgx.util.*;
import cgx.op.*;
import com.jspsmart.upload.SmartUpload;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.jsp.JspFactory;
import javax.servlet.jsp.PageContext;public class op_upload extends DataBase{
private upload upload = new upload();
private upload asps = new upload(); //新的类
private javax.servlet.http.HttpServletRequest request; //建立页面请求
private javax.servlet.http.HttpServletRequest response; //建立页面请求
JspFactory _jspxFactory = null;
PageContext pageContext = null;
private boolean sqlflag = true ; //对接收到的数据是否正确
private Vector uploadlist; //显示商品列表向量数组
public String sqlStr="";
public Vector getuploadlist() {
return uploadlist;
}
public boolean getSqlflag() {
return sqlflag;
}
public String to_String( String str) {
try
{
return new String(str.getBytes("ISO8859-1"));
}
catch (Exception e)
{
return str;
}
}
public boolean upload() throws Exception {
_jspxFactory = JspFactory.getDefaultFactory();
pageContext =_jspxFactory.getPageContext(this, request, response,null, true,8192,true);
com.jspsmart.upload.SmartUpload mySmartUpload=new com.jspsmart.upload.SmartUpload();
mySmartUpload.initialize(pageContext);
mySmartUpload.upload(); int count =mySmartUpload.save("/upload", mySmartUpload.SAVE_VIRTUAL);
for (int i=0;i<mySmartUpload.getFiles().getCount();i++)
{
com.jspsmart.upload.File file = mySmartUpload.getFiles().getFile(i);
if (file.isMissing()) continue;
}
}
public op_upload() {
}
}我的代码
/**
* <p>管理商品的类,包括商品的修改、查询,删除,添加 </p>
*/
import java.sql.*;
import java.util.Vector;
import cgx.util.*;
import cgx.op.*;import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.jsp.JspFactory;
import javax.servlet.jsp.PageContext;import com.jspsmart.upload.File;
import com.jspsmart.upload.SmartUpload;
public class op_upload extends DataBase{
private upload asps = new upload(); //新的类
private javax.servlet.http.HttpServletRequest request; //建立页面请求
private boolean sqlflag = true ; //对接收到的数据是否正确
private Vector uploadlist; //显示商品列表向量数组
public String sqlStr="";
public Vector getuploadlist() {
return uploadlist;
}
public boolean getSqlflag() {
return sqlflag;
}
public String to_String( String str) {
try
{
return new String(str.getBytes("ISO8859-1"));
}
catch (Exception e)
{
return str;
}
}
/**
* 将页面表单传来的资料分解
*/
public boolean getRequest(javax.servlet.http.HttpServletRequest newrequest) {
boolean flag = false;
try{
request = newrequest;
String ID = request.getParameter("id");
long spid = 0;
try{
spid = Long.parseLong(ID);
}catch (Exception e){
}
asps.setId(spid); String FILE1 = request.getParameter("FILE1");
if (FILE1==null || FILE1.equals(""))
{
FILE1 = "-";
sqlflag = false;
}
asps.setFILE1(to_String(FILE1)); String FILE2 = request.getParameter("FILE2");
if (FILE2==null || FILE2.equals(""))
{
FILE2 = "-";
}
asps.setFILE2(to_String(FILE2)); String FILE3 = request.getParameter("FILE3");;
if (FILE3==null)
{
FILE3 = "-";
sqlflag = false;
}
asps.setFILE3(to_String(FILE3));
String FILE4 = request.getParameter("FILE4");
if (FILE4 == null)
{
FILE4 = "-";
}
asps.setFILE4(to_String(FILE4));
if (sqlflag)
{
flag = true;
}
return flag;
}catch (Exception e){
return flag;
}
}public boolean upload() throws Exception {
HttpServletRequest request = null;
HttpServletResponse response = null;
JspFactory _jspxFactory = null;
PageContext pageContext = null;
_jspxFactory = JspFactory.getDefaultFactory();
--->PageContext pageContext = _jspxFactory.getPageContext(this, request, response,null, true, 8192, true);
-------------编译出错语句-------------------------------
SmartUpload su = new SmartUpload();
su.initialize(pageContext);
su.upload();
int count = su.save("/upload", su.SAVE_VIRTUAL);
for (int i = 0; i < su.getFiles().getCount(); i++) {
com.jspsmart.upload.File file = su.getFiles().getFile(i);
if (file.isMissing())
continue;
}
}
public op_upload() {
}
}
上传文件简直就是一个享受