您好,登录后才能下订单哦!
密码登录
登录注册
点击 登录注册 即表示同意《亿速云用户服务条款》
本篇文章为大家展示了利用SpringBoot怎么制作一个二维码生成功能,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
步骤
maven依赖
<!-- 生成二维码--> <dependency> <groupId>com.google.zxing</groupId> <artifactId>javase</artifactId> <version>3.3.0</version> </dependency>
工具类
package com.bennyrhys.mall.util; import com.google.zxing.BarcodeFormat; import com.google.zxing.WriterException; import com.google.zxing.client.j2se.MatrixToImageWriter; import com.google.zxing.common.BitMatrix; import com.google.zxing.qrcode.QRCodeWriter; import java.io.IOException; import java.nio.file.FileSystems; import java.nio.file.Path; /** * 描述: 生成二维码工具 */ public class QRCodeGenerator { public static void generateQRCodeImage(String text, int width, int height, String filePath) throws WriterException, IOException { QRCodeWriter qrCodeWriter = new QRCodeWriter(); BitMatrix bitMatrix = qrCodeWriter.encode(text, BarcodeFormat.QR_CODE, width, height); Path path = FileSystems.getDefault().getPath(filePath); MatrixToImageWriter.writeToPath(bitMatrix, "PNG", path); } public static void main(String[] args) { try { generateQRCodeImage("Hello World", 350, 350, "E:/JAVA/mall/src/main/resources/images/QRTest.png"); } catch (WriterException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
service
/** * 生成二维码 * 图片可解析出访问的支付对应订单号的支付连接 * @param orderNo 订单号 * @return 返回图片地址 */ @Override public String qrcode(String orderNo) { ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes(); HttpServletRequest request = attributes.getRequest(); String address = ip + ":" + request.getLocalPort(); String payUrl = "http://" + address + "/pay?orderNo=" + orderNo; try { QRCodeGenerator.generateQRCodeImage(payUrl, 350, 350, Constant.FILE_UPLOAD_PATH + orderNo + ".png"); } catch (WriterException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } String pngAddress = "http://" + address + "/images-dev/" + orderNo + ".png"; return pngAddress; }
扩展
局域网调试
线上调试
切换ip# 指定IP(防止ip转发获取的是内网ip) file.upload.ip=127.0.0.1
上述内容就是利用SpringBoot怎么制作一个二维码生成功能,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注亿速云行业资讯频道。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。