二維碼生成工具類

package com.skycc.controller.api;

import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletResponse;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;

import com.google.zxing.BarcodeFormat;
import com.google.zxing.WriterException;
import com.google.zxing.client.j2se.MatrixToImageWriter;
import com.google.zxing.common.BitMatrix;
import com.google.zxing.qrcode.QRCodeWriter;
import com.skycc.util.CreateQrcode;
/**
 * 生成二維碼
 * @author YPK
 *
 */
@Controller
public class QRCodeController {
 
    /**
     * 生成二維碼
     *
     * @param id       設備id
     * @param response response對象
     */
@RequestMapping(value = "/api/qrcode")
    public void getEquipmentQrcode(String url, HttpServletResponse response) {
        CreateQrcode createQrcode = new CreateQrcode();
        //生成二維碼
        try {
           
         ServletOutputStream stream = null;
            try {
                stream = response.getOutputStream();
                QRCodeWriter qrCodeWriter = new QRCodeWriter();
                BitMatrix bm = qrCodeWriter.encode(url, BarcodeFormat.QR_CODE, 300, 300);
                MatrixToImageWriter.writeToStream(bm, "png", stream);
            } catch (WriterException e) {
                e.getStackTrace();
            } finally {
                if (stream != null) {
                    stream.flush();
                    stream.close();
                }
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
  }
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章