Java 需要将数据从客户端应用程序发布到我的服务器

Java 需要将数据从客户端应用程序发布到我的服务器,java,post,file-upload,apache-httpcomponents,Java,Post,File Upload,Apache Httpcomponents,我知道标题可能是一个常见的问题,但我对我想做的每件事都有点困惑,所以我试图把它拼凑起来,并认为一个普通的标题会比一个令人困惑的好 我基本上是在开发一个web应用程序,其中一部分是文件上传程序。我通过流式API使用ApacheCommons文件上传,除了我需要访问正在上传的文件外,一切正常,因为其中包含要上传的其他文件的数据。即,读取文件A,获取图像路径,将带有文件A的图像上载到服务器并保存在服务器上。API可以在这里找到 我被告知,通过网络存在安全风险,通过浏览器是不可能的,因为用户需要选择所有

我知道标题可能是一个常见的问题,但我对我想做的每件事都有点困惑,所以我试图把它拼凑起来,并认为一个普通的标题会比一个令人困惑的好

我基本上是在开发一个web应用程序,其中一部分是文件上传程序。我通过流式API使用ApacheCommons文件上传,除了我需要访问正在上传的文件外,一切正常,因为其中包含要上传的其他文件的数据。即,读取文件A,获取图像路径,将带有文件A的图像上载到服务器并保存在服务器上。API可以在这里找到

我被告知,通过网络存在安全风险,通过浏览器是不可能的,因为用户需要选择所有要上载的文件,我无法告诉浏览器上载其他文件,因此我只能选择客户端选项

我很困惑是否有一个我需要的特殊库,或者正如我所看到的线程谈论使用内置的UrlConnection类或

我基本上需要能够读取该文件,从技术上讲,该文件为我提供了一条到用户系统上数据库的路径,然后我读取该路径以获取其他图像。在我得到所有这些之后,我需要将数据作为一个多部分表单发布,因为这是FileUpload所需要的

form method="POST" enctype="multipart/form-data" action="fup.cgi">
  File to upload: <input type="file" name="upfile"><br/>
  Notes about the file: <input type="text" name="note"><br/>
  <br/>
  <input type="submit" value="Press"> to upload the file!
</form>
formmethod=“POST”enctype=“多部分/表单数据”action=“fup.cgi”>
要上载的文件:
关于该文件的注释:

上传文件!
这是文件上载概述部分中的示例,可通过上面的链接访问

如果用户自己上传了所有数据,就不会有问题,但由于我必须自动完成其中的一些工作,因此会引起一些“关注/问题”

基本上,这些文件是从另一个应用程序创建和打包的,因此图像和数据库将始终位于同一个位置,并且它们正在上载的文件是另一个程序创建的文件,因此所有内容都将始终是已知的,我只需上载它,然后将其作为enctype=“multipart/form data”发布这样我的servlet就可以读取它并将它保存在我的服务器上


因此,如果有人对我的旅程从哪里开始有任何建议,我将不胜感激。我听说过一些应用程序,比如curl和wget,都是用于此目的的,但它们似乎更基于C。正如前面提到的,apache的httpcomponets可能工作得很好,但我想确保。

根据您的应用程序,您可能会通过“作弊”来绕过您最初设想的安全问题,阅读服务器上的原始文件,为其他文件生成一个带有上传表单的页面,并填写路径,让用户单击“上传”。这听起来是个不错的主意。你问“取决于我的申请”,所以我很好奇我到底依赖什么?我当然可以在服务器上阅读应用程序,但我必须查看如何从我的终端生成页面。另外,我相信我提到的是,我上传的文件必须读取MS Access数据库,然后从数据库中获取文件名。现在我正在使用UCanAccess,我可以从自己的计算机访问MS access文件,但不能太确定是否从用户的计算机本身访问(因为这可能也是一个安全问题)?我认为现在我们将在客户端使用该应用程序。我也忘了只使用FTP本身,所以我可能会这样做,而不是流。我还需要删除文件,所以我认为这可能是最好的方法。谢谢你的建议,尽管我真的很感激!