Java 生成在线二维码 以Base64返回前端
依赖的jar包主要是Google 的zxing 进行二维码的生成
<dependency><groupId>com.google.zxing</groupId><artifactId>core</artifactId><version>3.3.0</version></dependency><dependency><groupId>com.google.zxing</groupId><artifactId>javase</artifactId><version>3.3.0</version> </dependency>
第一种生成base64编码返回前端
package com.mingwen.common.utils;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.util.Base64;
import java.util.HashMap;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.github.binarywang.utils.qrcode.MatrixToImageWriter;
import com.google.zxing.BarcodeFormat;
import com.google.zxing.EncodeHintType;
import com.google.zxing.WriterException;
import com.google.zxing.common.BitMatrix;
import com.google.zxing.qrcode.QRCodeWriter;
public class QRCodeUtil {
private static String base64Url = "data:image/png;base64,";
/**
* 创建二维码
*
* @param url
* @param fileName
* @return
* @throws IOException
* @throws WriterException
*/
public static String createQRCode(String json) throws IOException, WriterException {
QRCodeWriter qrCodeWriter = new QRCodeWriter();
HashMap<EncodeHintType, Object> hints = new HashMap<>();
hints.put(EncodeHintType.CHARACTER_SET, "utf-8");
BitMatrix bitMatrix = qrCodeWriter.encode(json, BarcodeFormat.QR_CODE, 600, 600, hints);
ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
MatrixToImageWriter.writeToStream(bitMatrix, "PNG", outputStream);
Base64.Encoder encoder = Base64.getEncoder();
String text = encoder.encodeToString(outputStream.toByteArray());
return base64Url + text;
}
public static void main(String[] args) throws IOException, WriterException {
JSONObject json = new JSONObject();
JSONArray arr = new JSONArray();
json.put("name", "吴顺杰");
json.put("phone", "手机号码");
json.put("address", "地址");
json.put("bookid", "64");
for (int i = 0; i < 3; i++) {
JSONObject jsonw = new JSONObject();
jsonw.put("id", i);
jsonw.put("count", i);
jsonw.put("remake", "哈哈哈");
arr.add(jsonw);
json.put("Books", arr);
}
System.out.println(json);
System.out.println(createQRCode(json.toString()));
}
}
通过base64转二维码(http://tool.chinaz.com/tools/imgtobase/)
用微信扫描二维码:
Java 生成在线二维码 以Base64返回前端相关推荐
- java生成文字二维码、url二维码
java生成文字二维码.url二维码 pom: 1)生成文字二维码 java工具类: 2)url地址生成二维码 java工具类: pom: <dependency><groupId& ...
- JAVA生成的二维码以及给二维码添加背景图片
JAVA生成的二维码以及给二维码添加背景图片** 1.页面只需一行代码即可(用ajax请求得不到响应,也可以用表单提交) window.location.href = "${ctx}/qrc ...
- java生成圆形二维码logo
自定义生成二维码,可以根据自己的喜欢在二维码中添加图片.有些代码是参考网上某位大神的,如有相同之处,请给我留言,我加上您的名字或者不让参考发表,则可删除. jar提取地址: 链接: https://p ...
- Java生成解析二维码
Java生成二维码 一.介绍 1. 理解二维码 黑点代表二进制中的1,白点代表二进制中的0,通过1和0的排列组合,在二维空间记录数据.通过图像输入设备,读取其中的内容. 2. 二维码分类 二维码有不同 ...
- Java生成PDF417二维码
pdf417二维码,比较头疼,网上找老长时间的资料,最后翻出来了个Itext.jar,那么就简单的说说如何使用iText.jar生成pdf417二维码 1,老规矩下载jar文件,我的资源里有----- ...
- 你有没有使用java生成过二维码?(二)
作者专注于Java.架构.Linux.小程序.爬虫.自动化等技术. 工作期间含泪整理出一些资料,微信搜索[程序员高手之路],回复 [java][黑客][爬虫][小程序][面试]等关键字免费获取资料.技 ...
- 你有没有使用java生成过二维码?(一)
作者专注于Java.架构.Linux.小程序.爬虫.自动化等技术. 工作期间含泪整理出一些资料,微信搜索[程序员高手之路],回复 [java][黑客][爬虫][小程序][面试]等关键字免费获取资料.技 ...
- Java 生成支付二维码返回给前端和自定义二维码背景色
在做PC端通联支付的时候发现和微信支付不一样,返回的是一串支付串,并不直接是一个支付二维码,所以这里就需要手动转换了, 通过 Hutool 实现 添加如下依赖 <dependency>&l ...
- java生成微信二维码,带页面跳转功能
2019独角兽企业重金招聘Python工程师标准>>> package QRCode;import java.awt.image.BufferedImage; import java ...
最新文章
- python中需要用到的英文词汇-使用python从语料库中提取最常用的单词
- 笔试题——JavaScript事件循环机制(event loop、macrotask、microtask)
- [No0000A6]Visual Studio 2015 中的常用命令的默认键盘快捷键-VS2015 Shortcut
- Linux磁盘管理——df、du、磁盘分区、格式化、挂载、LVM
- jquery append和after, prepend和before的区别
- 1. MFC编程——变量命名规则
- SQL:从入门到“精通”
- 联想硬盘保护系统 安装详解
- W806/W801/W800多通道ADC同时使用
- java事件监听学习——通过键盘方向键控制小球移动
- Oracle BI产品线
- 二叉树的五种遍历方式
- 更改用户自己的FTP密码
- CentOS6 使用 RPM 安装 apache 服务器(一)
- C#编程,byte[]字节数组的复制
- nfc读卡java开发,分享一段飞天R502读卡器的JAVA读卡代码
- 九章算法笔记 - 思路总结
- 拖延症拖延的不想治怎么办!
- 微淘双十一商家直播玩法详解
- 搞笑的文章(转载)工作学习累时休息看看