生成文件并上传文件到服务器流程

生成文件并上传文件到服务器流程

一.生成PDF文件

  1. 引入IText7 jar包,方便后续生成PDF。

  2. 创建ByteArrayOutputStream流的实例与Document绑定;eg:

    PdfDocument pdfDoc = new PdfDocument(new PdfWriter(outputStream));
    // 构建文档对象
    Document doc = new Document(pdfDoc);
    
  3. 根据数据建立PDF文档,需要注意表格数据生成一行之后需要换行,Table#startNewRow()方法用于换行,其他具体样式查看API;最后记得关闭document。

  4. 至此,PDF文件生成且存储在ByteArrayOutputStream中。

二. 加密上传

  1. ByteArrayOutputStream实例转换成一个ByteArrayInputStream实例。

  2. 采用一个ByteArrayOutputStream实例保存加密后的ByteArrayInputStream实例。eg:

    byte[] buff = new byte[1024];
    int length;
    while((length = inputStream.read(buff)) != -1) {
           
        md5.update(buff, 0, length);
        byteArrayOutputStream.write(buff, 0, length);
    }
    
  3. 重新生成ByteArrayInputStream实例用于上传到服务器。

三.总结

  1. ByteArrayOutputStream将输出字节流与byte数组互转;
  2. ByteArrayInputStream将输入字节流与byte数组互转;
  3. InputStream不可重复使用。

你可能感兴趣的:(Java后台,java,itext,pdf)