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();
}
}
}
二维码生成工具类
最新推荐文章于 2023-02-17 18:11:34 发布