mysql - 如何从数据库插入图片?

标签 mysql database image jasper-reports

我想在 Jaspersoft Studio 的报告中的详细信息带中插入数据库中的图像。
JPG 图像保存在 MySQL 的 imgdata 字段中,类型为 longblob
我尝试将此表达式放在图像元素中:

  1. $F{imgdata}
  2. MyUtil.getInputStream($F{imgdata})

在第一种情况下我得到这个错误:

net.sf.jasperreports.engine.JRException: net.sf.jasperreports.engine.JRException: Unknown image source class [B

...在第二种情况下出现此错误:

net.sf.jasperreports.engine.JRException:
net.sf.jasperreports.engine.fill.JRExpressionEvalException: Error
evaluating expression :  Source text :
MyUtil.getInputStream($F{imgdata})

我的问题: 如何将数据库中的图像插入到 JasperReports 的报告中?

最佳答案

打开 .jrxml 文件的 XML View 。 然后找到类似这样的代码

<field name="image" class="java.lang.Object"/>  
/* "image" must be replaced by your actual field name */

并将其更改为

<field name="image" class="java.io.InputStream"/>

关于mysql - 如何从数据库插入图片?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15833031/

相关文章:

java - 如何在Excel中动态汇总工作时间?

java - 包含撇号 php 的文本

mysql - 使用 ruby​​ 脚本在 MySQL 中插入数据的最简单方法是什么

asp.net - 将 asp.net 缓存存储在 sql server 数据库中

php - DQL 选择关联

php - 通过mysql表的fetchRow创建数组的变量

mysql - Maxmind GeoIP 国家/城市 MySQL 开源替代方案

javascript - jQuery 图像 slider - 奇怪的行为

winforms - PictureBox 不改变其大小

html - 如何将图像重叠在一个圆圈上?