protectedvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{//TODOAuto-generatedmethodstubSmartUploadsu=newSmartUpload();...
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
SmartUpload su=new SmartUpload();
su.initialize(servletconfig, request, response);
su.setMaxFileSize(100000);
su.setTotalMaxFileSize(200000);
su.setAllowedFilesList("doc,txt");
try {
su.setDeniedFilesList("exe,bat,jsp,html,htm");
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
su.upload();
} catch (SmartUploadException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
int count=su.save("/upload");
if(count>0){System.out.println("succeed!");//成功后再跳转这里未写}
} catch (SmartUploadException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
由upload.jsp中的一个表单上传选择文件后,action指向该servlet,然后,我是想把上传的文件保存到根目录ch1下的upload文件下的,可不知道为什么,有时候能成功,有时候不能成功(成功之后我把upload删除了,Eclipse退出来,再新建upload文件夹后再试又不成功了),然后成功的时候我去查了下上传文件在哪?结果查到是D:\Eclipse\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\ch1\upload
(在不成功的时候,在这个目录下是没有upload文件夹的,新建它就能成功了)
我度娘了下,知道这是Eclipse工作的缓存工作区,有时好像我在D:\Eclipse\workspace\ch1\WebContent下新建upload文件夹再运行upload.jsp好像可以自动在D:\Eclipse\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\ch1\upload自动创建一个upload文件夹,然后上传就成功了,但有时不行,不知道为什么?
还有这是为什么啊?上传的路径这样写不是直接放在D:\Eclipse\workspace\ch1\WebContent\upload下的吗?怎么跑到这个莫名其妙的地方了?
展开