java如何生成二维码网页跳转

Java生成二维码图片和条形码图片
编辑:晓宇
阅读:(14598)
关键字词:java,二维码,条形码,图片
有空帮我喂下仓鼠,谢谢!
博客已稳定运行java怎么制作彩色艺术二维码? - 知乎2被浏览65分享邀请回答0添加评论分享收藏感谢收起java生成二维码的功能_java吧_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:710,467贴子:
java生成二维码的功能收藏
主要是这样的一个需求,用户扫二维码到一个连接中转站,连接中转站有很多url指向最终的目标页面,关键是这个中转站怎么实现,里面有很多个动态URL
javajava培训,零基础开始,入门到精通-优选职坐标java培训,职坐标java培训,职坐标IT培训[实力教学],理论加实践,1!
方法无限多- -,例如你把二维码数据带连接后在带到最终页面,或者提早生成在服务器上,根据url不同,在最终页面读特定名字的二维码不就好了么..还有很多种方法
别把二维码想的多高大上,信息表现形式而已
登录百度帐号云栖社区(yq.aliyun.com)为您免费提供java生成二维码相关的问答和话题,云栖社区以分享专业、优质、高效的技术为己任,帮助技术人快速成长与发展!java生成二维码的代码教程
直接上代码
package com.
import java.awt.C
import java.awt.Graphics2D;
import java.awt.image.BufferedI
import java.io.F
import javax.imageio.ImageIO;
import com.swetake.util.Q
public class CreateTwoBarImage {
public void creatTxm(String param) throws Exception {
Qrcode qrcode = new Qrcode();
qrcode.setQrcodeErrorCorrect('M');
qrcode.setQrcodeEncodeMode('B');
qrcode.setQrcodeVersion(7);
byte[] bstr = param.getBytes(&UTF-8&);//返回用指定名字命名的字节数组值
BufferedImage bi = new BufferedImage(139, 139,
BufferedImage.TYPE_INT_RGB);//实例化指定参数的BufferedImage
Graphics2D g = bi.createGraphics();//返回一个呈现指定 BufferedImage 的 Graphics2D 对象
g.setBackground(Color.WHITE); // 设置该Graphics2D 对象的背景颜色
g.clearRect(0, 0, 139, 139); //擦除指定的矩形,并且用一个透明的颜色填充它
g.setColor(Color.BLACK); // 条码颜色
if (bstr.length & 0 && bstr.length & 123) {
boolean[][] b = qrcode.calQrcode(bstr); //通过calQrcode函数将byte数组转换成boolean数组 ,然后依据编码后的boolean数组绘图
for (int i = 0; i & b. i++) {
for (int j = 0; j & b. j++) {
if (b[j][i]) {
g.fillRect(j * 3 + 2, i * 3 + 2, 3, 3); //填充指定的矩形
g.dispose(); //处理图形上下文,并释放资源
bi.flush();//将生成的BufferedImage序列化到磁盘
String FilePath = &D:/& + param + &.jpg&;//生成的二维码要存放的文件路径
File f = new File(FilePath);
ImageIO.write(bi, &jpg&, f);//将生成的二维码以图片的形式写入相应的文件
public static void main(String args[]) {
new CreateTwoBarImage().creatTxm(&lmb&);
} catch (Exception e) {
e.printStackTrace();
控制层正式代码
package com.item.
import java.awt.C
import java.awt.Graphics2D;
import java.awt.image.BufferedI
import java.io.IOE
import java.io.UnsupportedEncodingE
import javax.imageio.ImageIO;
import javax.servlet.http.HttpServletR
import javax.servlet.http.HttpServletR
import org.springframework.stereotype.C
import org.springframework.web.bind.annotation.RequestM
import com.swetake.util.Q
* @author: Yanmh
* @Title: PrintTwoBarController.java
* @Description: 生成2维码
* @data: 年11月27日
上午11:05:38
@Controller
@RequestMapping(&printcon&)
public class PrintTwoBarController {
@RequestMapping(value=&/img.it&)
public void print(HttpServletRequest request,
HttpServletResponse response) throws IOException{
String code = request.getParameter(&code&);
BufferedImage img = getImg(code);
ImageIO.write(img, &jpg&, response.getOutputStream());
public BufferedImage getImg(String code) throws UnsupportedEncodingException{
Qrcode testQrcode = new Qrcode();
testQrcode.setQrcodeErrorCorrect('M');
testQrcode.setQrcodeEncodeMode('B');
testQrcode.setQrcodeVersion(7);
byte[] d = code.getBytes(&UTF-8&);
BufferedImage image = new BufferedImage(98, 98,
BufferedImage.TYPE_BYTE_BINARY);
Graphics2D g = image.createGraphics();
g.setBackground(Color.WHITE);
g.clearRect(0, 0, 98, 98);
g.setColor(Color.BLACK);
if (d.length & 0 && d.length & 120) {
boolean[][] s = testQrcode.calQrcode(d);
for (int i = 0; i & s. i++) {
for (int j = 0; j & s. j++) {
if (s[j][i]) {
g.fillRect(j * 2 + 3, i * 2 + 3, 2, 2);
g.dispose();
image.flush();
&img src=&&%=path %&/printcon/img.it?code=https://www.baidu.com& width=&100& height=&100&/&

我要回帖

更多关于 二维码 java 的文章

 

随机推荐