hutool工具类生成二维码案例

一、环境:

添加hutool工具类依赖,hutool生成二维码是利用Google的zixing,而且不是强依赖,所以还需引入zxing依赖

<dependency><groupId>cn.hutool</groupId><artifactId>hutool-all</artifactId><version>5.3.4</version>
</dependency><dependency><groupId>com.google.zxing</groupId><artifactId>core</artifactId><version>3.3.3</version>
</dependency>

二、生成二维码

1.生成二维码,写入response流中返回前端

后台代码:

 /*** 获取二维码* yuanzidu* @return*/@GetMapping("/getQRCode")@ResponseBodypublic void getQRCode(HttpServletResponse response) throws IOException {String qrCodeUrl = "需要生成的内容";try {QrConfig qrConfig = new QrConfig(300, 300);QrCodeUtil.generate(qrCodeUrl, qrConfig, "png", response.getOutputStream());log.info("生成二维码成功!");} catch (QrCodeException | IOException e) {log.error("发生错误! {}!", e.getMessage());}}

前端接收:

<!-- 可用img标签进行接收 -->
<img th:src="xxxurl地址/getQRCode">
2.生成多个二维码并打包成zip下载

后台代码:

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.OutputStream;
import java.util.*;
import java.util.zip.ZipEntry;
import java.util.zip.ZipOutputStream;/*** 打包成.zip选中的二维码* yuanzidu*/@GetMapping("/getAllQRCode")@ResponseBodypublic void getAllQRCode(HttpServletResponse response) throws IOException {Assert.hasLength(id, "主键不能为空.");//设置响应参数response.setContentType("application/zip");response.setHeader("Content-disposition","attachment; filename=" + new String((StringUtils.replace("二维码列表_" + DateUtil.now(), " ", "_")).getBytes(),"ISO-8859-1") + ".zip");//zip流OutputStream outputStream = response.getOutputStream();ZipOutputStream zipOutputStream = new ZipOutputStream(outputStream);//根据id生成二维码List<String> idList = new ArrayList<>();idList.add("1");idList.add("2");idList.add("3");idList.add("4");//生成二维码并压缩进zipfor (String id : idList) {String fileName ="二维码_"+id;ZipEntry entry = new ZipEntry(fileName + "." + "PNG");zipOutputStream.putNextEntry(entry);QrCodeUtil.generate(id, 300, 300, ImgUtil.IMAGE_TYPE_PNG, zipOutputStream);zipOutputStream.flush();}zipOutputStream.close();outputStream.flush();outputStream.close();}

前端代码:

<script>
function downloadFile(){window.location.href = "url地址/getAllQRCode";
}
</script>

hutool工具类生成二维码案例相关推荐

  1. 用Java写一个工具类生成二维码

    首先需要在pom.xml里添加zxing依赖 <dependency><groupId>com.google.zxing</groupId><artifact ...

  2. PHP基于phpqrcode类生成二维码

    使用ThinkPHP框架引入phpqrcode类生成二维码后,发现每次必须通过TP框架生成,略显繁琐,打算写一个简单的方法,然后运行php后直接批量生成二维码.方法也简单,直接写个PHP脚本,然后引入 ...

  3. phpqrcode类生成二维码详解

    本文实例讲述了PHP基于phpqrcode类生成二维码的方法.分享给大家供大家参考,具体如下: 使用PHP语言生成二维码,还是挺有难度的,当然调用生成二维码图片的接口(比如:联图网http://www ...

  4. SpringBoot利用ZXing工具来生成二维码(简单)

    一.简单二维码生成 1.1.依赖 <!--二维码工具--> <dependency><groupId>com.google.zxing</groupId> ...

  5. MVP登录和注册页面Activity类 生成二维码 异常捕获类

    1.分包效果 bean包:json格式转成java代码 MVP model层:loginModel package com.jia.logindemo.model; import com.google ...

  6. thinkphp使用phpqrcode类生成二维码

    phpqrcode类文件下载 下载地址:https://sourceforge.net/projects/phpqrcode/ PHP环境必须开启支持GD2扩展库支持(一般情况下都是开启状态) 具体使 ...

  7. PHP基于phpqrcode类生成二维码的方法详解

    前期准备: 1.phpqrcode类文件下载,下载地址:https://sourceforge.net/projects/phpqrcode/ 2.PHP环境必须开启支持GD2扩展库支持(一般情况下都 ...

  8. Java:利用qrcode工具类对二维码进行解析或生成

    1.引用jar包 <dependency><groupId>com.github.binarywang</groupId><artifactId>qrc ...

  9. QrCode类生成二维码海报

    /*** 生成个人二维码* @param $virtual_id* @return bool* @throws \Endroid\QrCode\Exceptions\ImageTypeInvalidE ...

最新文章

  1. Ethernet/IP 学习笔记四
  2. win10如何下载适合自己python版本的pygame?
  3. Spark常规性能调优一:最优资源配置
  4. 【windows】CMake安装小结
  5. 史上最简单的git教程搭配Github和Gitee一起食用更佳
  6. Android开发之无bug滑动删除源码(非第三方库)
  7. 任务管理器在右下角的图标不显示
  8. 摩拜服务器维护,摩拜的后台是云服务器
  9. 腐蚀rust电脑分辨率调多少_腐蚀Rust画面怎么设置 _游侠网
  10. Android客户端和服务器端数据交互的第二种方法
  11. 你做不到对企业真正有价值,下一个裁员就是你
  12. 【平面设计学习】Ai使用心得-扁平化制作
  13. 微信小程序直播为什么这么受欢迎
  14. 常见蛋白质种类_蛋白质对人体有什么重要作用 常见蛋白质都有哪些种类
  15. 技校自我鉴定范文计算机600字,技校自我鉴定100字范文18篇
  16. [交互问题]XML 解析错误:格式不佳
  17. ❀论文篇 ❀ 2010-2022,情绪识别(EmotionRecognition)论文
  18. NumPy 数组的维度变换
  19. 解析 | 模-数(A/D)转换器
  20. Oracle和plsql的卸载与安装

热门文章

  1. 广和通实现基于5G R16模组的FWA Open CPU方案技术突破
  2. 量子计算与量子信息之量子力学引论(一)
  3. 《从一到无穷大:科学中的事实和臆测》小记
  4. python epub 精品_如何利用Python打包HTML页面为epub?
  5. 如何在当前文件夹打开命令行窗口
  6. 中原工学院校园网一键登录
  7. 微软上海,招 Partner 软件开发经理!
  8. 通过“三秒法则”告别拖延,成为行动派
  9. powershell 启动时报错 profile.ps1 cannot be loaded because running scri
  10. Android辅助权限实战之微信自动评论与点赞