java Spring Boot生成图片二维码

首先 我们要引入依赖

pom.xml中插入

xml 复制代码
<dependency>
    <groupId>com.google.zxing</groupId>
    <artifactId>core</artifactId>
    <version>3.4.1</version>
</dependency>
<dependency>
    <groupId>com.google.zxing</groupId>
    <artifactId>javase</artifactId>
    <version>3.4.1</version>
</dependency>

然后 直接在接口类中写入函数

java 复制代码
@GetMapping(value = "/qrcode/{text}")
public void generateQRCode(@PathVariable("text") String text, HttpServletResponse response) throws IOException, WriterException {
    response.setContentType(MediaType.IMAGE_PNG_VALUE);
    OutputStream outputStream = response.getOutputStream();

    Map<EncodeHintType, Object> hints = new HashMap<>();
    hints.put(EncodeHintType.CHARACTER_SET, "UTF-8");

    BitMatrix bitMatrix = new MultiFormatWriter().encode(text, BarcodeFormat.QR_CODE, 200, 200, hints);
    MatrixToImageWriter.writeToStream(bitMatrix, "PNG", outputStream);

    outputStream.flush();
    outputStream.close();
}

然后 直接访问 端口+前缀配置/qrcode/要生成的二维码文本内容

例如 这里我访问

http://localhost/books/qrcode/1992

然后 接口就会返回一个二维码 给我们 这里 因为CSDN平台不支持 禁止二维码图片 我就用画笔破获一下 免得被和谐了

然后用手机扫描二维码

就可以带出我们文本的内容

相关推荐
何中应8 分钟前
Spring Boot中选择性加载Bean的几种方式
java·spring boot·后端
苏苏大大10 分钟前
zookeeper
java·分布式·zookeeper·云原生
阿俊仔(摸鱼版)12 分钟前
Python 常用运维模块之OS模块篇
运维·开发语言·python·云服务器
军训猫猫头12 分钟前
56.命令绑定 C#例子 WPF例子
开发语言·c#·wpf
sunly_19 分钟前
Flutter:自定义Tab切换,订单列表页tab,tab吸顶
开发语言·javascript·flutter
远方 hi30 分钟前
linux虚拟机连接不上Xshell
开发语言·php·apache
wclass-zhengge37 分钟前
03垃圾回收篇(D3_垃圾收集器的选择及相关参数)
java·jvm
涛ing39 分钟前
23. C语言 文件操作详解
java·linux·c语言·开发语言·c++·vscode·vim
NoneCoder40 分钟前
JavaScript系列(42)--路由系统实现详解
开发语言·javascript·网络
半桔43 分钟前
栈和队列(C语言)
c语言·开发语言·数据结构·c++·git