【问题标题】:how to get full path for upload a file in jsp?如何获取在jsp中上传文件的完整路径?
【发布时间】:2014-05-10 11:22:36
【问题描述】:

在我的 jsp 页面中,使用文件上传并将字符串文件传递到 java 页面以复制到特定文件夹。我想要复制文件的完整路径。但我只得到一个带扩展名的文件名。

扫描文件:ABC.pdf

它只显示:ABC.pdf

我要显示:c:/abc.pdf

【问题讨论】:

标签: java file jsp upload


【解决方案1】:

JSP 是生成面向客户端的 HTML 代码(通常称为视图)的代码,而 Servlet 是服务器代码。实际上它们将在不同的机器上,那么完整路径有什么用。提交表单时,文件内容应发布到 servlet。

你的jsp应该是这样的:

<form action="UploadServlet" method="post"
                        enctype="multipart/form-data">
<input type="file" name="file" size="50" />
<br />
<input type="submit" value="Upload File" />
</form>

当然,您还有其他输入字段。

查看此链接

How to upload files to server using JSP/Servlet?

【讨论】:

  • 也许显示一些代码,我可以更具体。 JSP 应该用于在浏览器上向您的用户显示视图。当数据被 POSTED(提交/文件上传)时,它应该被发送到在 Java 应用服务器(如 Tomcat)中运行的 servlet。用户浏览器(可能有 100 个用户)将在与 servlet 不同的机器上运行。
  • JSP 不是客户端代码,JavaScript、HTML、CSS 是。
  • 我已经编辑了我的答案(同时尽量保持简单)解释使用 JSP 与 Servlet 代码的区别
  • @Java1 我要上传。如果我有路径.. 我将它作为字符串传递给 servlet,然后我很容易上传它.. 如果你知道如何将文件从 jsp 传递给 servlet?
  • @AlexandreLavoie 我不认为我曾经说过 JSP 是客户端代码。我说它会产生 HTML 代码。
【解决方案2】:

本地文件路径在服务器端是无用的。它只对黑客有用。这就是浏览器不发送它的原因。它是一种安全措施。你应该很高兴它在那里。我很惊讶现有的答案都没有指出这一点。

在服务器端,您决定保存文件的位置。显然,您不希望用户做出决定。让他们能够决定将文件保存在服务器上的哪个位置,这将使他们能够覆盖您的系统文件。

【讨论】:

    【解决方案3】:
    猜你喜欢
    • 2013-11-24
    • 1970-01-01
    • 2016-03-13
    • 1970-01-01
    • 2011-04-17
    • 2016-11-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多