将文件从Action发送到Servlet

时间:2014-05-24 18:34:02

标签: java file servlets upload

我的目标是将文件从操作上传到servlet。

直到现在,我以为我有这样的工作方式:

  • 操作:将文件读取为bytearray,将其转换为String并将String置于请求

    HttpURLConnection conn =null;
     String url = "http://myServlet");
    URL obj = new URL(url);
     conn = (HttpURLConnection) obj.openConnection();
    conn.setDoOutput(true);
      conn.setRequestMethod("GET");
      StringBuffer requestParams = new StringBuffer();
      requestParams.append("fileString");
      requestParams.append("=").append(URLEncoder.encode(fileString, "ISO-8859-1"));
     //Append more params
     OutputStreamWriter wr = new OutputStreamWriter(conn.getOutputStream());
     wr.write(requestParams.toString());
     wr.flush();
    conn.getContentLength();
    
  • Servlet:获取String参数,将其转换回bytearray并重新创建文件

       receivedString = request.getParameter("fileString");
        //Convert to bytearray and create file
    

但我想这不是一个好的解决方案,因为有时候调用因为字符串而失败(长度可能是?)

发送文件的正确方法是什么?我找不到发送文件的方法和将它们放在请求上的其他信息。

0 个答案:

没有答案