在JavaEE应用程序中存储.pdf文件

时间:2014-05-18 17:34:44

标签: java-ee file-upload jsf-2 file-io glassfish

我正在开发一个JavaEE应用程序(UI:Jsf,DataBase:Mysql,App。服务器:Glassfish,以及用于生成pdf的iText)。

在页面上,单击“生成”按钮后,将创建一个pdf文件。 此文件将保存在某处。 在另一个页面上,用户可以加载此文件。

我搜索后的解决方案: 存储pdf文件的标准解决方案是什么? (速度,安全问题等) 在数据库(BLOB类型)中,还是在文件系统上?

谢谢!

1 个答案:

答案 0 :(得分:0)

如果你只是需要在用户导航到下一页时存储它,我会使用临时文件或只是将文件保存在会话的内存中。

如果要更长时间地存储PDF,最简单的方法是在数据库中使用BLOB。但是,这可能会导致操作出现问题,因为数据库可能会(取决于PDF的数量和大小)变得相当大。为避免这种情况,请将其存储在文件系统中。查看https://xadisk.java.net/

从安全角度来看,使用任何解决方案都不应该产生很大的影响。如果有人上了磁盘,那么读取数据库文件或其他文件之间没有太大区别。