数据库存储格式为base64字符串不是图片:
列如某张表的某个字段的内容是6Lqr5L2T5Lmz,经过mysql数据库的select from_base64('6Lqr5L2T5Lmz') 输出为:身体乳
报表不支持from_base64函数,所以需要自定义函数去转换这个base64格式存储的字符串:(附上自定义函数CustomFun)
- package com.fr.function;
- import com.fr.script.AbstractFunction;
- import java.util.Base64;
- /**
- * 自定义函数
- */
- public class CustomFun extends AbstractFunction {
- /**
- * @param args 函数的参数,是经过了算子处理了其中特殊参数的
- * @return 经过函数处理的值,用于参与最终计算
- */
- public Object run(Object[] args) {
- return new String(Base64.getDecoder().decode(args[0].toString()));
- }
- }
复制代码
自定义函数添加方式可以按照http://help.finereport.com/doc-view-698.html这个方式添加到服务器上,在单元格里面显示值写上此函数即可转换成功
备注:此函数是我们的开发妹子春霞写的,觉得很惊艳,分享给大家,第一次写帖子,不是很美观,多多包涵。
编辑于 2019-1-18 11:06
|