<dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-all</artifactId>
<version>4.6.8</version>
</dependency>
package com.jusekj.mall.util;
import cn.hutool.captcha.CaptchaUtil;
import cn.hutool.captcha.ShearCaptcha;
import org.springframework.stereotype.Component;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.OutputStream;
@Component
public class ImgCodeUtil {
public void getImgCode(String phone, Integer width,Integer height,HttpServletRequest request, HttpServletResponse response) {
OutputStream out = null;
try {
out = response.getOutputStream();
ShearCaptcha captcha = CaptchaUtil.createShearCaptcha(width, height, 4, 4);
captcha.write(out);
boolean checkPass = captcha.verify(captcha.getCode());
request.getSession().setAttribute(phone+"imgCode", captcha.getCode());
out.flush();
out.close();
} catch (IOException e) {
e.printStackTrace();
} finally {
if (out != null) {
try {
out.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
public Boolean checkImgCode(String phone,String imgCode, HttpServletRequest req) {
String sessionImgCode = (String) req.getSession().getAttribute(phone+"imgCode");
String inputCode = imgCode;
if (sessionImgCode.equalsIgnoreCase(inputCode)) {
return true;
}
return false;
}
}