为了账号安全,请及时绑定邮箱和手机立即绑定

为什么页面提交的流都是空格

<form action="UpdloadServlet"  method="post" enctype="multipart/form-data">
          请选择图片:<input  name="myfile" type="file" />
          <input type="submit" value="提交"  />${result}
      </form>

正在回答

1 回答

是 SmartUpload 要导入其 jar 包,你的 form 的 action 应该是 action="smartUploadServlet.do",而不是原来的 action="uploadServlet.do",注意 web.xml 的配置:

 <servlet>

    <servlet-name>SmartUploadServlet</servlet-name>

    <servlet-class>com.imooc.servlet.SmartUploadServlet</servlet-class>

  </servlet>

  <servlet-mapping>

    <servlet-name>SmartUploadServlet</servlet-name>

    <url-pattern>/smartUploadServlet.do</url-pattern>

  </servlet-mapping>

最后,SmartUploadServlet 类的 doPost方法应该是这样:

public void doPost(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {


//设置上传文件保存路径

String filePath = getServletContext().getRealPath("/")+"images/";

File file = new File(filePath);

if(!file.exists()){

file.mkdir();

}

SmartUpload su = new SmartUpload();

//初始化对象

su.initialize(getServletConfig(), request, response);

//设置上传文件大小

su.setMaxFileSize(1024*1024*10);

//设置所有文件的大小

su.setTotalMaxFileSize(1024*1024*100);

//设置允许上传文件类型

su.setAllowedFilesList("txt,jpg,gif");

String result="上传成功!";

//设置禁止上传的文件类型

try{

  su.setDeniedFilesList("rap,jsp,js");

  //上传文件

  su.upload();

  

  int count = su.save(filePath);

  System.out.println("上传成功" + count + "个文件!");

  

}catch (Exception e) {

result = "上传失败!";

if(e.getMessage().indexOf("1015") != -1){

result = "上传失败:上传文件类型不正确!";

}else if(e.getMessage().indexOf("1010") != -1){

result = "上传失败:上传文件类型不正确!";

}else if(e.getMessage().indexOf("1105") != -1){

result ="上传失败:上传文件大小大于允许上传的最大值!";

}else if(e.getMessage().indexOf("1110") != -1){

result ="上传失败:上传文件总大小大于允许上传总大小的最大值!";

}

e.printStackTrace();

}

for(int i=0;i < su.getFiles().getCount();i++){

com.jspsmart.upload.File tempFile = su.getFiles().getFile(i);

System.out.println("--------------------");

System.out.println("表单当中 name 的值:"+tempFile.getFieldName());

System.out.println("上传文件名:"+tempFile.getFileName());

System.out.println("上传文件的大小:"+tempFile.getSize());

System.out.println("上传文件的拓展名:"+tempFile.getFileExt());

System.out.println("上传文件全名:"+tempFile.getFilePathName());

System.out.println("--------------------");

}

request.setAttribute("result", result);

request.getRequestDispatcher("jsp/02.jsp").forward(request, response);

}

这样就绝对不会错了!

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

为什么页面提交的流都是空格

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信