根据URL生成二维码(扫描可根据二维码跳转 )

根据URL生成二维码,并返回到jsp页面,生成的改二维码可通过扫描得到URL
跳转页面。
特别说明一下:所有的url都在存在了一个集合里面,要把所有的url都变成二维码,然后在前台
把这些生成的二维码都遍历出来。因为前台的每一个分享对应一个二维码。

第一次接触这个,无从下手,希望多多指教。给个方法

阅读 12.2k
3 个回答

google zxing 二维码生成库。

直接使用url生成即可使用了。

Map<EncodeHintType, Object> hints = new HashMap<>();
hints.put(EncodeHintType.CHARACTER_SET, "UTF-8");
hints.put(EncodeHintType.MARGIN, 0);

BitMatrix bitMatrix = new MultiFormatWriter()
        .encode(url, BarcodeFormat.QR_CODE, 300, 300, hints);

MatrixToImageWriter.writeToStream(bitMatrix, "png", stream);

@RequestMapping("/qr-code")
public void placeQrOrder(HttpServletResponse resp) {
    resp.setHeader("Cache-Control", "no-store");
    resp.setHeader("Pragma", "no-cache");
    resp.setDateHeader("Expires", 0);
    resp.setContentType("image/png");

    Map<EncodeHintType, Object> hints = new HashMap<>();
    hints.put(EncodeHintType.CHARACTER_SET, "UTF-8");
    hints.put(EncodeHintType.MARGIN, 0);
    
    BitMatrix bitMatrix = new MultiFormatWriter()
            .encode("https://www.google.com", BarcodeFormat.QR_CODE, 300, 300, hints);
    
    MatrixToImageWriter.writeToStream(bitMatrix, "png", resp.getOutputStream());
}

上面是一个完整的Spring例子。生成的图片直接通过http流写出去。前端直接使用<img src="/qr-code"/>显示二维码即可。

前端就可以实现,jquery-qrcode,使用也很简单,按照README即可。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题