java-从数据库读取FOP图像
作者:互联网
我的应用程序使用EAR中存储的图像生成PDF.映像大约每月更改一次,我想将它们移到数据库中,以避免每次更改映像文件时都进行部署.
不幸的是有一个问题:
<fo:block>
<fo:external-graphic src=”testImage.gif”/>
</fo:block>
FOP可以仅接受URL作为参数.
我可以创建一个读取数据库并提供图像的servlet,然后可以从FOP上下文中引用servlet URL,但是我认为这不是最佳解决方案.
另一种解决方案是将图像存储在文件系统中并在数据库中记录文件名,但是我不喜欢这些选项.
您如何看待这些解决方案?有第三个人吗?
谢谢
佐尔坦
解决方法:
我认为您的servlet选项可能是最好的.
这是另一种选择,不确定是否合适.将图像以文件名作为主键存储在数据库中.在应用程序启动期间,将所有图像从数据库中拉出,并将它们写入适当位置的给定文件名,以便FOP逻辑可以找到它们.
无论何时在数据库中更改映像,都需要重新启动应用程序,或者您需要添加一种强制其刷新磁盘上映像文件的方法.
标签:xsl-fo,java,database 来源: https://codeday.me/bug/20191105/1997579.html