java Spring Boot生成图片二维码

news/2024/6/19 3:59:56 标签: java, spring boot, 开发语言

首先 我们要引入依赖
pom.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平台不支持 禁止二维码图片 我就用画笔破获一下 免得被和谐了
在这里插入图片描述
然后用手机扫描二维码
在这里插入图片描述
就可以带出我们文本的内容


http://www.niftyadmin.cn/n/5049106.html

相关文章

变电站运维服务方案

一、背景与目标 随着电力行业的快速发展&#xff0c;变电站的数量和规模不断扩大&#xff0c;运维服务的需求也日益增长。为了确保变电站的安全、稳定、高效运行&#xff0c;提高运维服务质量&#xff0c;本文档旨在提供一套全面的变电站运维服务方案。 二、服务范围 …

UGUI 绘制线段

描述 点击鼠标左键在屏幕上绘制线段 准备 VertexHelper 网格绘制工具类向量、叉乘RectTransformUtility.ScreenPointToLocalPointInRectangleSetVerticesDirtyOnPopulateMesh 思路 鼠标按下&#xff0c;记录线段起点&#xff1b;鼠标持续按下&#xff0c;记录鼠标当前帧的…

使用Optional优雅避免空指针异常

本文已收录至GitHub&#xff0c;推荐阅读 &#x1f449; Java随想录 微信公众号&#xff1a;Java随想录 原创不易&#xff0c;注重版权。转载请注明原作者和原文链接 文章目录 Optional 介绍Optional 使用创建 Optional 对象orElse()与orElseGet()orElse() 和 orElseGet()的区…

【JavaEE】多线程案例-线程池

文章目录 1. 什么是线程池2. 为什么要使用线程池&#xff08;线程池有什么优点&#xff09;3. 如何使用Java标准库提供的线程池3.1 创建一个线程池对象3.2 什么是工厂模式3.3 为什么要使用工厂模式3.4 Executors 创建不同具有不同特性的线程池3.5 ThreadPool 类的构造方法3.6 线…

【数据结构】顺序表与ArrayList

作者主页&#xff1a;paper jie 的博客 本文作者&#xff1a;大家好&#xff0c;我是paper jie&#xff0c;感谢你阅读本文&#xff0c;欢迎一建三连哦。 本文录入于《JAVA数据结构》专栏&#xff0c;本专栏是针对于大学生&#xff0c;编程小白精心打造的。笔者用重金(时间和精…

Vue3+element-plus切换标签页时数据保留问题

记录一次切换标签页缓存失效问题&#xff0c;注册路由时name不一致可能会导致缓存失效

【面试题精讲】Springboot应用异常处理

“ 有的时候博客内容会有变动&#xff0c;首发博客是最新的&#xff0c;其他博客地址可能会未同步,认准https://blog.zysicyj.top ” 首发博客地址 文章更新计划 系列文章地址 1. 什么是Spring Boot应用异常处理? Spring Boot应用异常处理是指在Spring Boot应用中对异常进行捕…

聊聊druid的borrow行为

序 本文主要研究一下druid的borrow行为 getConnection com/alibaba/druid/pool/DruidDataSource.java public DruidPooledConnection getConnection() throws SQLException {return getConnection(maxWait);}public DruidPooledConnection getConnection(long maxWaitMillis…