被低估的BIRT报表(四):中文乱码的解决办法

时间:2022-12-28 00:06:16

为了适应BIRT图形对类别域与值域两个必填项的支持,我们有时需要对SQL进行连接运算,如下:

select '已使用' as "USED", sum(overallCpuUsage) as "VALUES" from T_CONFIGS_HOST union select '未使用' as "USED", sum(cpuHz/1024/1024 - overallCpuUsage) as "VALUES" from T_CONFIGS_HOST

但由于中文的原因,导致产生的数据集出现乱码,截图如下:
被低估的BIRT报表(四):中文乱码的解决办法
解决办法的思路是所有的编码都采用UTF-8,故修改BIRT的JDBC数据库连接为:

## 将localhost改为数据库的地址
jdbc:mysql://localhost/cloud?zeroDateTimeBehavior=convertToNull&characterEncoding=utf8

再次测试,BIRT已能顺利读取中文,最后图形展示效果如下:
被低估的BIRT报表(四):中文乱码的解决办法

结论

BIRT支持了几乎所有的通用图形,还支持图形的个性化定制,所以利用BIRT可以做出令人惊艳的图片效果。