生成随机图片验证码 hutool工具类

hutool工具类

hutool工具类是一个非常强大的工具类,这里可以用到特别简单的一个验证码生成工具包

createCode  创建验证码,实现类需同时生成随机验证码字符串和验证码图片
getCode  获取验证码的文字内容
verify   验证验证码是否正确
write   将验证码写出到目标流中

写出到文件或者流中

   public static void main(String[] args) {
        //验证码的长、宽、位数、干扰的个数
        LineCaptcha lineCaptcha = CaptchaUtil.createLineCaptcha(200, 100,5,20);

        //可以写出到文件,也可以写出到流
        lineCaptcha.write("d:/line.png");

        //获取生成的验证码
        String code = lineCaptcha.getCode();
        System.out.println(code);

        //验证生成的验证码返回boolean值
        boolean verify = lineCaptcha.verify(code);
        System.out.println(verify);

        //生成圆圈干扰验证码
        CircleCaptcha circleCaptcha = CaptchaUtil.createCircleCaptcha(200, 100, 4, 20);

        //生成扭曲干扰验证码
        ShearCaptcha shearCaptcha = CaptchaUtil.createShearCaptcha(300, 100, 4, 4);
    }

当然浏览器中使用非常广泛,可以通过web项目写出到浏览器中,通过servlet继承httpservlet方法实现

public class GetCodeServlet extends HttpServlet {
    @Override
    protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
    	//验证码的长、宽、位数、干扰的个数
        CircleCaptcha captcha = CaptchaUtil.createCircleCaptcha(80, 40, 4, 4);
        req.getSession().setAttribute("code", captcha.getCode());
        //直接servlet输出
        captcha.write(resp.getOutputStream());
    }
}

这里我把验证码存在了session中,因为验证的时候用到可以直接从session中取出。一定注意hutool的jar包不要放错位置,建议在web下的WEB-INF下的lib包中。
hutool jar包下载地址!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值