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();
}
}
}
二維碼生成工具類
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.