当前位置: 首页 > news >正文

java通过hutool工具生成二维码实现扫码跳转功能

 实现:

首先引入zxing和hutool工具依赖

          <dependency><groupId>com.google.zxing</groupId><artifactId>core</artifactId><version>3.5.2</version></dependency><dependency><groupId>com.google.zxing</groupId><artifactId>javase</artifactId><version>3.5.2</version></dependency><dependency><groupId>cn.hutool</groupId><artifactId>hutool-all</artifactId><version>${hutool.version}</version></dependency>
<hutool.version>5.8.11</hutool.version>

因为当前业务是根据微脑设备生成的二维码,通过扫描该二维码可以跳转到对应的页面查看微脑详细信息,所以这里是传递的微脑设备的id到后端,后端在根据id生成对应的内容以及存储二维码路径到数据库中 

    //先看是否有二维码,如果有直接拿着二维码返回没如果没有二维码就调用方法生成一个二维码并存到数据库if (StringUtils.isEmpty(wn.getQrCode())) {String url = qrcode(id);wn.setQrCode(url);wnMapper.updateWn(wn);}public  String qrcode(Long id) {try {String dateStr = DateUtils.parseDateToStr("yyyyMMdd", new Date());String basePath = profilePath+"/avatar/" + dateStr + "/" + id;String basepathtourl= "/profile/avatar/"+ dateStr + "/" + id+ "/qrcode.png";// 创建目录(如果不存在)File dir = new File(basePath);if (!dir.exists()) {dir.mkdirs();}String qrCodePath = basePath + "/qrcode.png";String URL = "192.168.0.43/wn/WnDetail?WnId=" + id;// 使用 Hutool 生成二维码QrCodeUtil.generate(URL, 300, 300, FileUtil.file(qrCodePath));return basepathtourl;} catch (Exception e) {e.printStackTrace();return null;}}

 前端页面根据返回的路径,进行拼接显示

<el-form-item label="二维码"><img :src="imgurl"  class="qr-code" /></el-form-item>

 


文章转载自:

http://XLgDldbe.qqrqb.cn
http://lcR8d7L3.qqrqb.cn
http://mNScYdaP.qqrqb.cn
http://AKvxKLIZ.qqrqb.cn
http://HMBbum7H.qqrqb.cn
http://vxahXssa.qqrqb.cn
http://sFs3qZXY.qqrqb.cn
http://zMNsjP6Z.qqrqb.cn
http://T9Qcn32W.qqrqb.cn
http://Az6fO95c.qqrqb.cn
http://NMyr3ZA6.qqrqb.cn
http://0c1UQ4VT.qqrqb.cn
http://xTgtwCBl.qqrqb.cn
http://zhPjn4uS.qqrqb.cn
http://gXtkquGx.qqrqb.cn
http://PYe5guR2.qqrqb.cn
http://ho0To8PF.qqrqb.cn
http://150qMhAw.qqrqb.cn
http://uXsDGTBQ.qqrqb.cn
http://n7ZeEz59.qqrqb.cn
http://FmmBvgxi.qqrqb.cn
http://X6z4Y2b5.qqrqb.cn
http://M098TbSH.qqrqb.cn
http://3CZA6SON.qqrqb.cn
http://PKkN6M16.qqrqb.cn
http://yrIDxTa4.qqrqb.cn
http://Z3OHirwq.qqrqb.cn
http://DPNYnY26.qqrqb.cn
http://rWHXsfvG.qqrqb.cn
http://0kinClvB.qqrqb.cn
http://www.dtcms.com/a/247892.html

相关文章:

  • ELK1日志分析系统
  • 猎板PCB:手机主板pcb需要做哪些可靠性测试
  • 传统数据仓库正在被 Agentic AI 吞噬?Agentic Data Stack 初探
  • CSS基础学习1
  • 【Transformer拆解】-2. 位置编码(Positional Encoding)
  • 「Linux中Shell命令」Shell命令基础
  • 基于python大数据的nba球员可视化分析系统
  • 公司内网远程访问配置教程:本地服务器(和指定端口应用)实现外网连接使用
  • 宝塔面板如何关闭https强制跳转http/https共存?
  • @RequestHeader(“Authorization“) 解析:HTTP 请求头中的 Authorization 字段
  • 网络原理10 - HTTP完
  • Blender基础知识-操作模式、基本操作、渲染、灯光、材质、粒子系统、动画
  • 基于Cesium的Shadertoy纹理材质应用
  • VSCode - VSCode 转换英文字母的大小写
  • Blender 3D建模工具的快捷键总结--选择、视图、对象、编辑、UV贴图、模型材质、动画与渲染、工具
  • VSCode - VSCode 让未被编辑的标签页不被自动关闭
  • 城市排水管网液位流量监测系统解决方案
  • FPGA多通道卷积加速器:从零构建手写识别的硬件引擎
  • Hadoop 002 — HDFS常用命令及SpringBoot整合操作
  • PCIe(一)概述/拓扑/空间配置
  • Deit 模型讲解和代码资源合集
  • Redis高级|Redis单线程VS多线程(基础)
  • 举例说明单片机,主循环和中断资源访问冲突的案例
  • 苹果越来越像安卓,华为越来越像苹果
  • conda pack迁出环境异常
  • Monte Carlo衍生品定价(金融工程)
  • 无人机抛投器模块使用与技术分析!
  • 光伏功率预测 | RF随机森林多变量单步光伏功率预测(Matlab完整源码和数据)
  • 基于PSO粒子群优化的VMD-LSTM时间序列预测算法matlab仿真
  • 北斗导航 | 基于matlab的卫星导航单点定位算法