Java 如何在web服务器外上传文件?

Java 如何在web服务器外上传文件?,java,tomcat,servlets,upload,Java,Tomcat,Servlets,Upload,我想将文件从web服务器上传到Servlet中,就像在d驱动器中一样,但我无法上传它们 要在Tomcat 6.0中启用这样的功能,我必须做些什么?这应该是可行的。基本上,您需要做的就是从请求主体中获得InputStream风格的上传文件。你通常用这个。然后,您可以按照通常的方式将其写入任何OutputStream,例如FileOutputStream 假设您实际使用的是Apache Commons FileUpload,它需要作为依赖项,下面是一个基本示例: String filename =

我想将文件从web服务器上传到Servlet中,就像在d驱动器中一样,但我无法上传它们


要在Tomcat 6.0中启用这样的功能,我必须做些什么?

这应该是可行的。基本上,您需要做的就是从请求主体中获得
InputStream
风格的上传文件。你通常用这个。然后,您可以按照通常的方式将其写入任何
OutputStream
,例如
FileOutputStream

假设您实际使用的是Apache Commons FileUpload,它需要作为依赖项,下面是一个基本示例:

String filename = FilenameUtils.getName(fileItem.getName()); // Important!
File destination = new File("D:/path/to/files", filename);

InputStream input = null;
OutputStream output = null;

try {
    input = fileItem.getInputStream();
    output = new FileOutputStream(destination);
    IOUtils.copy(input, output);
} finally {
    IOUtils.closeQuietly(output);
    IOUtils.closeQuietly(input);
}
或者,您也可以使用Fileupload方便的
FileItem#write()
方法:

String filename = FilenameUtils.getName(fileItem.getName()); // Important!
File destination = new File("D:/path/to/files", filename);

fileItem.write(destination);

有关更多示例、提示和技巧,请查看文件上载和。

您尝试了哪些内容,哪些不起作用。“外部web服务器”是什么意思。是否要将它们存储到其他位置?