doPut()Servlet

时间:2010-06-28 18:45:11

标签: java servlets

我对Java中的WebdavServlet实现中的doPut方法有疑问。

如果你不熟悉它,我认为你不需要。

doPut接受2个参数,HttpServletRequest req和HttpServletResponse resp。

基本上,doPut会将文件放入您的servlet。

我有一些关于它如何指定WHICH FILE和放置WHERE的问题。

所以我认为它的放置来自getRelativePath(req)。

但我不知道文件部分。

1 个答案:

答案 0 :(得分:3)

文件的内容在HttpServletRequest#getInputStream()的请求正文中可用。只需按照OutputStream的方式将其写入任何usual Java IO即可。 FileOutputStream将其写入本地文件。

但是,您需要事先知道内容编码如何解码请求正文。通常使用multipart/form-data编码。要解析它,Apache Commons FileUpload是事实上的标准。单击该链接并浏览用户指南常见问题以了解如何使用它。

您不应该对文件在客户端的位置感兴趣,因为您无论如何都无法访问它。当服务器和客户端在物理上在同一台机器上运行时(因此在相同的磁盘文件系统中),您将只能访问它,但这通常不会在现实世界中发生。