Java将文件转换成二维码
生成二维码主要代码为在步骤1、2中,下边后续步骤3、4、5涉及到具体的业务。要是用该工具类时需要拷贝前两个步骤代码即可。
1、在项目pom.xml文件中引入生成二维码的第三方依赖
<!-- https://mvnrepository.com/artifact/com.google.zxing/core -->
<dependency><groupId>com.google.zxing</groupId><artifactId>core</artifactId><version>3.3.3</version>
</dependency>
2、生成二维码的工具类
/*** 二维码生成工具*/
public class QRCodeUtils {private static final int BLACK = 0xFF000000;private static final int WHITE = 0xFFFFFFFF;/*** 根据字符串生成对应的二维码图片png* 大小:300*300* <p>* content:要转换的文字内容* path:生成的二维码图片的绝对路径* filename: 生成后的二维码图片的文件名* Constants.SYS_HOME_QRCODE_FORMAT=“PNG”。我在外部常量类中定义的一个常量,即生成的二维码图片的格式*/public static void buildQuickMark(String content, String path, String filename) {try {BitMatrix byteMatrix = new MultiFormatWriter().encode(new String(content.getBytes(), "iso-8859-1"),BarcodeFormat.QR_CODE, 300, 300);String format = Constants.SYS_HOME_QRCODE_FORMAT;File file = new File(path + "\\" + filename + "." + format);BufferedImage image = toBufferedImage(byteMatrix);if (!ImageIO.write(image, format, file)) {throw new IOException("Could not write an image of format " + format + " to " + file);}} catch (Exception e) {e.printStackTrace();}}/*** 设置二维码格式** @param matrix* @return*/private static BufferedImage toBufferedImage(BitMatrix matrix) {int width = matrix.getWidth();int height = matrix.getHeight();BufferedImage image = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);for (int x = 0; x < width; x++) {for (int y = 0; y < height; y++) {image.setRGB(x, y, matrix.get(x, y) ? BLACK : WHITE);}}return image;}
}//测试将http://127.0.0.1:8888链接生成二维码
public static void main(String[] args) {//设置图片内容String content = "http://127.0.0.1:8888";//设置图片存放位置String path = "D:\\QRCode";//设置生成的图片的名字String filename = "test";QRCodeUtils.buildQuickMark(content, path, filename);System.out.println("创建成功");
}
3、生成的二维码图片
4、生成二维码的业务层代码实现类
/*** 二维码 业务层处理** @author sense*/
@Service
public class SysQRCodeServiceImpl implements SysQRCodeService {@AutowiredSysConfigService sysConfigService;public String getQRCode() {return saveQRCode();}//将生成的二维码保存到服务器,并返回文件名public String saveQRCode(){//首先拿到系统配置中的要转换的二维码的值String configValue = sysConfigService.selectConfigByKey(Constants.SYS_HOME_QRCODE).getConfigValue();String qrCodeName = "QRCode";//生成二维码图片QRCodeUtils.buildQuickMark(configValue,uploadUrl(), qrCodeName);String resultQRCodeName = qrCodeName+"."+Constants.SYS_HOME_QRCODE_FORMAT;return resultQRCodeName;}//设置生成的二维码存放路径public String uploadUrl() {// 根据系统当前日期Date now = new Date();String date = new SimpleDateFormat("yyyyMM").format(now);// 设置图片存放地址String uploadFilePath = SenseConfig.getUploadFilePath();// 判断是否存在地址,如果不存在,按照规则创建文件夹File addr = new File(uploadFilePath);if (!addr.exists()) {addr.mkdirs();}return uploadFilePath;}
5、生成二维码的业务层代码接口
public interface SysQRCodeService {String getQRCode();
}
6、生成二维码的接口,共前端调用,获取生成二维码的图片名
/*** QRCode 生成二维码*/
@RestController
@RequestMapping("/sys/QRCode")
public class SysQRCodeController {@AutowiredSysQRCodeService sysQRCodeService;@RequestMapping()public AjaxResult getQRCode(){return AjaxResult.success(sysQRCodeService.getQRCode());}
}
Java将文件转换成二维码相关推荐
- java把URL转换成二维码并保存在指定的位置
1.首先先导包 <dependency><groupId>net.glxn.qrgen</groupId><artifactId>javase</ ...
- 自己制作的视频,如何转换成二维码?
毫不夸张地说,"视频"是这一届网友最喜欢的冲浪方式.视频里有黄金屋.有理想国.有人世间.有远方和诗.我们不分白天和黑夜地在视频中汲取养分和快乐,就连吃饭.睡觉.上厕所,都时刻保持眼 ...
- 谷歌浏览器地址转换成二维码的插件,只需几行代码即可实现
谷歌浏览器插件,是利用javascript进行编写的.具体代码参考在github里面,这是本人简单编写的一个谷歌浏览器地址转换成二维码的插件,里面的代码思路本文暂时不做解析,只是介绍如何使用这个插件. ...
- Android将apk转换成二维码提供给别人扫描并下载
这两天在网上查找了大量的资料,希望能够将我的Android的apk转换成二维码,提供给客户扫描并下载应用,查找了很久,都没有看到有合适的,他们说的都是要自己提供apk给后台,让后台帮忙弄一个下载链接, ...
- WORD段落国英互译,以及段落文字转换成二维码、条形码
WORD段落转换成多国语言 WORD段落转换成多国语言,转换成二维码.转换成条形码,请跟我操作
- react项目中把获取的url转换成二维码
在项目开发中遇到一个需求就是把后台返回的URL路径转换成二维码,经过像度娘查询之后选用了一种方法,并且已经在项目中成功使用,所以专门来记录下,避免以后忘记,处理步骤如下: 安装该依赖的来源:https ...
- 2021/04/29 插件qrcodejs2将后端链接转换成二维码
背景 需求内有个扫码功能,后端会把链接从接口返回给我,我把收到的链接转换成二维码显示到页面上 步骤 – step1.安装 npm install qrcodejs2 --save – step2. 引 ...
- python转换成二维码
python转换成二维码 准备环境 python生成二维码,需要依赖包qrcode和PIL(二维码的实质就是一个url.) python3安装PIL:pip install PIL python2安装 ...
- 字符串 转换成 二维码
/**将字符串 转换成 二维码 调用 generateQRCode(string) * Created by tangzheng on 2016/8/4. */ public class String ...
- 将网址转换成二维码,通过微信扫码访问
将自己的博客地址转成二维码,微信扫码访问: 二维码生成器 草料二维码生成器网址
最新文章
- IOS设计模式第六篇之适配器设计模式
- linux服务器崩,Linux系统崩溃最快速的解决方法
- android logger的使用
- java按钮位置_java窗口按钮位置设置
- nboot通过DNW下载并运行eboot.nb0
- 批量html转换成excel,Excel批量转为Html,Html转换成Excel - 软件教程网
- Linux上搭建nginx,及简单配置
- 背叛乔布斯,库克做对了
- curl 没有到主机的路由_安装RaspAP将树莓派变身为无线路由器
- 任务计划程序设置软件在电脑重启后启动
- 微信公众号发起微信支付 c#
- 什么是作用域链(源码解析)
- Unity3D基础8:C#脚本
- 好友伤害_家暴,对一个孩子的伤害到底有多大?
- java适配器模式 场景_详解Java适配器模式
- Kinect for Windows sdk下载 以及安装时错误的解决方案
- 基于STM32设计的数字电子秤
- 智飞生物与碧迪医疗战略合作;奥的斯智慧服务实验室完成升级 | 美通企业日报
- java 将json写入txt_关于json:在java中将String写入文本文件
- 计算机桌面摆桃心,怎样把桌面的图标摆成爱心形状的?(要图片)?