前言
最近看到同事用的一个生成图片比较好看的验证码工具类,故记录一下。
VerifyCodeUtil
博主特地找了一下,这个工具类是CSDN的另一博主自己写的Java生成图片验证码(有点仿QQ验证码的意思)具体代码就不在这里写了,大家可以去原PO看一下
应用
博主这里的应用环境为Spring boot
1. controller
/**
* 获取验证码
* @throws IOException
*/
@RequestMapping("/imageCode")
public void imageCode(HttpServletRequest request, HttpServletResponse response) throws IOException {
response.setHeader("Pragma", "No-cache");
response.setHeader("Cache-Control", "no-cache");
response.setDateHeader("Expires", 0);
response.setContentType("image/jpeg");
// 生成随机字串
String verifyCode = VerifyCodeUtil.generateVerifyCode(4);
// 存入会话session
HttpSession session = request.getSession(true);
session.setAttribute("verifyCode", verifyCode.toLowerCase());
// 生成图片
int w = 120, h = 45;
VerifyCodeUtil.outputImage(w, h, response.getOutputStream(), verifyCode);
}
2. html
<img src='/imageCode' onclick="this.src='/imageCode?'+(Date.parse(new Date())/1000);" alt="点击刷新图片" width="100" height="50"/>