SpringBoot 接口 字节数组直接显示为图片

源码:

java 复制代码
import java.io.ByteArrayOutputStream;
import javax.imageio.ImageIO;
import org.springframework.web.bind.annotation.RequestMapping;


/**
 * 获取二维码图像
 * 二维码支付
 *
 * @param price 金额
 * @return 二维码图像
 * @throws IOException IOException
 */
@RequestMapping(value = "toQrPay.jpg", produces = "image/jpeg;charset=UTF-8")
public byte[] toQrPay(BigDecimal price) throws IOException {
    //获取对应的支付账户操作工具(可根据账户id)
    ByteArrayOutputStream baos = new ByteArrayOutputStream();
    ImageIO.write(service.genQrPay(new PayOrder(
            "订单title",
            "摘要",
            null == price ? BigDecimal.valueOf(0.01) : price,
            System.currentTimeMillis() + "", AliTransactionType.SWEEPPAY)),
            "JPEG",
            baos);
    return baos.toByteArray();
}
相关推荐
桦说编程1 小时前
Guava 迭代器增强类介绍
java·后端·设计模式
235161 小时前
【JVM】Java为啥能跨平台?JDK/JRE/JVM的关系?
java·开发语言·jvm·spring boot·后端·spring·职场和发展
courtfu1 小时前
Plugin ‘mysql_native_password‘ is not loaded`
java·后端
枫子有风2 小时前
Go语言流程控制
android·java·golang
上进小菜猪2 小时前
测试自动化Replay:让数据库迁移测试回归真实场景的一把“利器”
后端
Python私教2 小时前
FastAPI × SQLAlchemy 2.0 Async:从“能跑”到“可压测”的完整工程实践
后端
小裕哥略帅2 小时前
订单管理--实时算出在途数量、收货数量、到货数量、已发货数量和未发货数量
java·开发语言
Python私教2 小时前
FastAPI × Loguru:从“能跑”到“可运维”的日志实战
后端
Dxxyyyy3 小时前
零基础学JAVA--Day27(注释+异常+异常处理方法)
java·开发语言
Craaaayon3 小时前
如何选择两种缓存更新策略(写缓存+异步写库;写数据库+异步更新缓存)
java·数据库·redis·后端·缓存·mybatis