在网上看了2天例子。大多是上传处理直接在jsp页面实现的。
我现在要做的是前台提交表单到mainservlet.
if(strUrl.equals("upload.html"))
{
UploadServlet.MyUpload(request,response);
}
将smartupload放在一个包里。在UploadServlet中调用
但是,我搞不懂的是:smartupload的初始化语句里su.initialize(pageContext);pageContext如何取到?因为是放在Servlet里处理,所以写在JSP的语句肯定不能通用。有没有人做过这方面的工作?请指点下如何在servlet里实现smartupload的功能。谢谢。
我现在要做的是前台提交表单到mainservlet.
if(strUrl.equals("upload.html"))
{
UploadServlet.MyUpload(request,response);
}
将smartupload放在一个包里。在UploadServlet中调用
但是,我搞不懂的是:smartupload的初始化语句里su.initialize(pageContext);pageContext如何取到?因为是放在Servlet里处理,所以写在JSP的语句肯定不能通用。有没有人做过这方面的工作?请指点下如何在servlet里实现smartupload的功能。谢谢。
//定义类变量
private ServletConfig config;
javax.servlet.http.HttpServletRequest request;
javax.servlet.http.HttpServletResponse response;//定义构造函数
public SUpload(javax.servlet.ServletConfig config,HttpServletRequest req,HttpServetResponse res){
this.config=config;
this.request=req;
this.response=res;
}
//下面是上传和下载的代码,我就不写了}//2、在Servelt中使用类。
一般我们都是继承于HttpServlet来处理。不过就算不是也没关系。原理是一样的。在Servlet中定义初始化方法,覆盖基类的方法。
//声明类变量
private ServletConfig config;
final public void init(ServletConfig config)throws Exception{
this.config=config;
}//在处理上传得过程中,
SUpload su=new SUpload(config,req,res);
//这样就调用了定义的类。
3、同时我在处理的时候遇到了这样的问题。就是页面分发的问题。
当我们默认继承HttpServlet时候,使用
RequestDispatcher dis=getServletContext().getRequestDispatcher("filepath");
dis.forward(req,res);但是当我们处理了init的方法后,这样就不行了。要将第一句改为
RequestDispatcher dis=config.getServletContext().getRequestDispatcher("filepath");最后, 说明一下,这些是我手敲进去的。
所以可能某些单词写的太快不正确。希望谅解。因为有代码的不是一台机子。希望对楼主有用。
upfileload.initialize(this.getServletConfig(),req,resp);
try{
date=new Date();
file_name=String.valueOf(date.getTime());
upfileload.setDeniedFilesList("exe,html,php,jsp,asp,aspx,htm");
upfileload.upload();
com.jspsmart.upload.Request filerequest = upfileload.getRequest();
String tt[] = filerequest.getParameterValues("file_ro");
if(tt.length>=3){
upfile.setFile_rs(true);
kk[0]="1";
}
else{
upfile.setFile_rs(false);
kk[0]="0";
}
if(tt.length>=2){
upfile.setFile_rf(true);
kk[1]="1";
}
else{
upfile.setFile_rf(false);
kk[1]="0";
}
if(tt.length>=1){
upfile.setFile_ro(true);
kk[2]="1";
}
else{
upfile.setFile_ro(false);
kk[2]="0";
}
tempfile=upfileload.getFiles().getFile(0);
upfileload.getFiles().getFile(0).saveAs(url+"\\"+file_name+"."+upfileload.getFiles().getFile(0).getFileExt());
out.println("上传文件成功!");
}catch(Exception e){
out.println("上传文件失败!你所选择文件类型不允许上传!");
}
newxy技术网站:http://www.newxy.net
newxy技术范例:http://www.newxy.net/zh_cn/samples/index.jsp另见技术文章:http://blog.csdn.net/nlhlx/