如何·生成二维码
如何·生成二维码
南桥北木 发表于1年前
如何·生成二维码
  • 发表于 1年前
  • 阅读 4
  • 收藏 0
  • 点赞 0
  • 评论 0

腾讯云 学生专属云服务套餐 10元起购>>>   

摘要: jsp生成二维码

package com.cn;

import java.io.IOException;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.cn.erweima;

public class codeServlet extends HttpServlet {

private static final long serialVersionUID = 1L;  
  
@Override  
protected void service(HttpServletRequest requset, HttpServletResponse response)  
        throws ServletException, IOException {  
    String content = "姓名:maysnow 电话:123687495";  
    erweima encoder = new erweima();  
    encoder.encoderQRCoder(content, response);  
}  

}

package com.cn;

import java.io.IOException;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.cn.erweima;

public class codeServlet extends HttpServlet {

private static final long serialVersionUID = 1L;  
  
@Override  
protected void service(HttpServletRequest requset, HttpServletResponse response)  
        throws ServletException, IOException {  
    String content = "姓名:maysnow 电话:123687495";  
    erweima encoder = new erweima();  
    encoder.encoderQRCoder(content, response);  
}  

}


package train.sql.com;

import java.awt.Color;
import java.awt.Graphics2D;
import java.awt.image.BufferedImage;

import javax.imageio.ImageIO;
import javax.servlet.http.HttpServletResponse;

import com.swetake.util.Qrcode;

public class erweima {

public void encoderQRCoder(String content, HttpServletResponse response) {  
    try {  
        Qrcode handler = new Qrcode();  
        handler.setQrcodeErrorCorrect('M');  
        handler.setQrcodeEncodeMode('B');  
        handler.setQrcodeVersion(7);  
          
        System.out.println(content);  
        byte[] contentBytes = content.getBytes("UTF-8");  
          
        BufferedImage bufImg = new BufferedImage(80, 80, BufferedImage.TYPE_INT_RGB);  
          
        Graphics2D gs = bufImg.createGraphics();  
          
        gs.setBackground(Color.WHITE);  
        gs.clearRect(0, 0, 140, 140);  
          
        //设定图像颜色:BLACK  
        gs.setColor(Color.BLACK);  
          
        //设置偏移量  不设置肯能导致解析出错  
        int pixoff = 2;  
        //输出内容:二维码  
        if(contentBytes.length > 0 && contentBytes.length < 124) {  
            boolean[][] codeOut = handler.calQrcode(contentBytes);  
            for(int i = 0; i < codeOut.length; i++) {  
                for(int j = 0; j < codeOut.length; j++) {  
                    if(codeOut[j][i]) {  
                        gs.fillRect(j * 3 + pixoff, i * 3 + pixoff,3, 3);  
                    }  
                }  
            }  
        } else {  
            System.err.println("QRCode content bytes length = " + contentBytes.length + " not in [ 0,120 ]. ");  
        }  
          
        gs.dispose();  
        bufImg.flush();  
          
          
          
        //生成二维码QRCode图片  
        ImageIO.write(bufImg, "jpg", response.getOutputStream());  
          
          
    } catch (Exception e) {  
        e.printStackTrace();  
    }  
}  

}

共有 人打赏支持
粉丝 0
博文 109
码字总数 19397
×
南桥北木
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: