下面是一段文件上传代码,好像是利用服务器保存(部分try。catch等异常语句省略)。请问,这到底是怎么保存的呢?只是传递url给函数啊。目前小弟脑袋里的保存概念就是将上传的文件保存的某个目录里面,可是这个代码就没有保存到电脑里的哪个个目录。服务器每次重启后,以前上传的文件仍然存在,请问大家能讲解下原理吗?文件到底保存到哪里了呢?这是什么技术呢?谢谢~HttpClient client = createHttpClient("http://localhost:8080");
PostMethod postMethod = new PostMethod("/filelib/upload/" + appkey + "/" + uid);int i = 0;
Part[] parts = new Part[(fileList.size() * 2)];for (FileFormModel fileFormModel : fileList) {
    File file = fileFormModel.getFile();
    FileBaseModel fileModel = new FileBaseModel();
    fileModel.setContentType(fileFormModel.getContentType());
    .....省略....
    XStream xstream = new XStream();
    xstream.alias("fileModel", FileModel.class);
    String xml = xstream.toXML(fileModel);
    parts[i * 2] = new StringPart("xml" + String.valueOf(i), xml, "UTF-8");
    parts[i * 2 + 1] = new FilePart("xml" + String.valueOf(i), file, fileModel.getContentType(), "UTF-8");    i++;
}
//
postMethod.setRequestEntity(new MultipartRequestEntity(parts, postMethod.getParams()));int status = client.executeMethod(postMethod);
String xmlText = IOUtils.toString(postMethod.getResponseBodyAsStream());
XStream xstream = new XStream();
return (FileModelList) xstream.fromXML(xmlText);postMethod.releaseConnection();  

解决方案 »

  1.   

    注意PostMethod postMethod = new PostMethod("/filelib/upload/" + appkey + "/" + uid);
    这行,这是文件的保存目录,都封装到PostMethod这个类里面了。
      

  2.   

    这是文件保存目录吗?
    这是在浏览器上输入的url地址,前面是路径是“http://localhost:8080”
    文件怎么能保存到服务器的路径呢?
    谢谢~
      

  3.   

    都是自定义的类吧?服务器路径 this.getServletContext().getRealPath("/")