【Java】java | hutool生成二维码 | 无法访问com.google.zxing.BarcodeFormat

文章讲述了在使用Hutool库的项目中,遇到生成二维码后上传至Minio服务时无法访问com.google.zxing.BarcodeFormat类的困境。为了解决这个问题,作者建议添加Google的ZXing库的maven依赖,版本号为3.5.1。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、说明

        1、项目使用hutool

        2、需求: 生成二维码并上传到minio

        3、无法访问com.google.zxing.BarcodeFormat

二、解决

1、加入maven依赖即可

<dependency>
    <groupId>com.google.zxing</groupId>
    <artifactId>core</artifactId>
    <version>3.5.1</version>
</dependency>

### Java 中用于生成二维码的库和方法 #### 使用 Google ZXing生成二维码 Google ZXing 是一个广泛使用的开源库,能够处理多种条形码和二维码格式。为了在项目中集成此功能,需引入相应的 Maven 依赖: ```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> ``` 通过 `generateQRCodeToBase64` 方法可以创建 Base64 编码形式的二维码图像字符串[^2]。 #### 基于 Spring Boot 的实现方案 存在两种主要途径来实现在 Spring Boot 上部署的服务端应用中的二维码生成功能:一是利用上述提到过的 Google 开发工具包;二是借助 Hutool 工具类完成相同任务[^3]。 对于前者而言,在服务层编写业务逻辑时可调用如下代码片段作为参考实例: ```java import com.google.zxing.BarcodeFormat; import com.google.zxing.EncodeHintType; import com.google.zxing.MultiFormatWriter; import com.google.zxing.common.BitMatrix; public String generateQrCode(String content, int width, int height){ Map<EncodeHintType, Object> hints = new HashMap<>(); hints.put(EncodeHintType.CHARACTER_SET,"UTF-8"); try { BitMatrix bitMatrix = new MultiFormatWriter().encode(content, BarcodeFormat.QR_CODE,width,height,hints); // 进一步操作bitMatrix对象... } catch (Exception e) { throw new RuntimeException(e.getMessage()); } } ``` 而后者则提供了更为简洁易懂的方式来进行同样工作,只需几行简单配置即可满足需求。 #### 将二维码绘制至自定义背景图 除了单纯地生产标准规格下的黑白方格图案外,有时还需要把特定样式应用于最终输出物之上。此时可以通过扩展原有流程加入额外步骤——例如使用 `matrixToBufferedImage` 函数将位矩阵映射成带有指定外观特性的 BufferedImage 对象再做后续加工处理。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值