实体类中,创建其对应的参数
@Excel(name = "签到图", type = 2, width = 30.0,orderNum = "12", imageType = 2)
private byte[] orderImgB64;
如果存放的图片文件是base64数据,解码插入
解码代码
//对字节数组字符串进行Base64解码并生成图片
public static byte[] GenerateImage(String base64) {
try {
// 去掉base64前缀 data:image/jpeg;base64,
base64 = base64.substring(base64.indexOf(",", 1) + 1);
// 解密,解密的结果是一个byte数组
Base64.Decoder decoder = Base64.getDecoder();
byte[] imgbytes = decoder.decode(base64);
for (int i = 0; i < imgbytes.length; ++i) {
if (imgbytes[i] < 0) {
imgbytes[i] += 256;
}
}
return imgbytes;
} catch (Exception e) {
log.error("Base64图片解码异常");
return null;
}
}
插入代码
orderPageDTO.setOrderImgB64(GenerateImage(orderPageDTO.getOrderImg()));