Spring Web应用程序将文件保存到服务器

时间:2016-08-12 23:41:14

标签: java spring server itext

我构建了一个Web应用程序。

我想从服务器读取文件,然后生成PDF文件(使用itText),然后将其保存到服务器。

我不知道如何从服务器找到文件,然后将文件保存到服务器。

我从电脑上读取数据并将数据写入我的电脑。

上面的代码可以正常工作,但只能在我的计算机上而不是服务器上。

String jspPath = "C:\\Users\\dave\\Desktop\\eclipse\\project\\";
    String fileName = "CV.txt";
InputStreamReader ir = new InputStreamReader(new FileInputStream(jspPath+filename), "UTF-8");

//然后使用iText生成PDF //和

FileOutputStream fs = new FileOutputStream(jspPath+"generated.pdf");
    PdfWriter pdfWriter = new PdfWriter(fs);
    PdfDocument pdfdoc = new PdfDocument(pdfWriter);

JSP路径引用我的文件夹而不是生成的pdf链接。

我想:

  1. 将CV.txt放入服务器并阅读。

  2. 生成pdf(它会起作用)。

  3. 将生成的PDF保存到服务器

  4. 我可以下载生成的PDF的链接。

  5. 先谢谢

1 个答案:

答案 0 :(得分:2)

以下几点可能对您有所帮助。

  1. 您可以使用FormData将文本文件从前端传递到后端。 使用ajax post调用来传递数据。 阅读此post以了解如何将数据从前端发送到后端。
  2. 您将在RequestContext参数的后端拥有整个文件作为FileItem对象。您可以使用InputStreamReader开始读取文件。

    1. 将其转换为pdf文件。

    2. 您可以将pdf文件保存到java临时目录

    3. String temporaryDir = System.getProperty(“java.io.tmpdir”);

      这将返回java临时目录的路径,您可以稍后删除此pdf文件

      1. 您必须使用content-type ='application / pdf'创建ResponseBuilder以作为pdf文件下载并将其返回到UI。阅读此post
      2. 希望这些信息可以帮助您解决问题!