天天看点

java图片验证码算法

一、实现思路

    使用BufferedImage用于在内存中存储生成的验证码图片

    使用Graphics来进行验证码图片的绘制,并将绘制在图片上的验证码存放到session中用于后续验证

    最后通过ImageIO将生成的图片进行输出

    通过页面提交的验证码和存放在session中的验证码对比来进行校验

二、生成验证码

页面通过访问servlet来生成验证码,servlet中的代码如下:

三、校验验证码

通过前台提交的验证码与session中数据进行对比来校验验证码,代码如下:

验证码提交页面html代码:

当生成的验证码不清楚时需要刷新重新生成验证码,js代码如下:

四、效果展示

    生成的验证码

    验证成功

这里写图片描述

这里写图片描述

    验证失败

这里写图片描述

这里写图片描述

五、总结

本文介绍了验证码的生成和验证,生成的验证码比较简单没有添加线条等干扰因素,比较容易识别。在实际的项目中可采用其他的第三方验证码库来生成验证码。