验证码的制作

验证码定义:
验证码是一种区分用户是计算机还是人的公共自动程序。
作用:
可以防止恶意破解密码,刷票、论坛灌水,有效防止某个黑客对某一个特定注册用户用特定程序暴力破解方式进行不断的登录尝试。

没有验证码会带来的一些问题:

  • 对特定用户不断登录破解密码
  • 对某个网站创建账户
  • 对某个网站提交垃圾数据
  • 对某个网站刷票
1、使用Servlet实现
验证码的制作_第1张图片
验证码的制作_第2张图片
验证码的制作_第3张图片
验证码的制作_第4张图片
验证码的制作_第5张图片
验证码的制作_第6张图片
开源组件实现验证码
验证码的制作_第7张图片
  1. 使用Jcaptcha组件实现验证码
    jcaptcha的使用比较简单:
    1:下载并将其JAR放到类路径下
    2:配置web.xml
    3:写一个验证验证码的请求方法

web配置代码


    jcaptcha
    
       com.octo.captcha.module.servlet.image.SimpleImageCaptchaServlet
    

  1. 使用Kaptcha组件使用验证码

下载kaptcha-2.3。jar
将jar包导入项目
编写页面
配置web.xml
启动项目
web.xml配置


kaptcha

com.google.code.kaptchaServlet


插件KaptchaServlet获取session中的验证码

String captcha = ((String) request.getSession().getAttribute(
com.google.code.kaptcha.Constants.KAPTCHA_SESSION_KEY));
验证码的制作_第8张图片
验证码的制作_第9张图片

边框颜色:rgb值也可以


验证码的制作_第10张图片
验证码的制作_第11张图片
验证码的制作_第12张图片
验证码的制作_第13张图片
验证码的制作_第14张图片
验证码的制作_第15张图片
验证码的制作_第16张图片
验证码的制作_第17张图片
验证码的制作_第18张图片
验证码的制作_第19张图片
验证码的制作_第20张图片
验证码的制作_第21张图片
验证码的制作_第22张图片
验证码的制作_第23张图片
验证码的制作_第24张图片
验证码的制作_第25张图片
验证码的制作_第26张图片

文本实现类:kaptcha.textproducer.impl 值为:com.google.code.kaptcha.text.impl.DefaultTextCreator
验证码值配置:kaptcha.textproducer.char.string 值:abcde2345678gfynmnpwx(随意你自己写)
验证码的长度:kaptcha.textproducer.char.length 值:
字体:kaptcha.textproducer.font.names 值:Arial,Courier
字体颜色:kaptcha.textproducer.font.color 值: r,g,b 或者 white,black,blue
文字间隔:kaptcha.textproducer.char.space 值:
干扰实现类:kaptcha.noise.impl 值:com.google.code.kaptcha.impl.DefaultNoise/NoNoise
干扰颜色:kaptcha.noise.color 值: r,g,b 或者 white,black,blue
图片样式:kaptcha.obscurificator.impl 值:
水纹com.google.code.kaptcha.impl.WaterRipple;
鱼眼com.google.code.kaptcha.impl.FishEyeGimpy;
阴影com.google.code.kaptcha.impl.ShadowGimpy
背景实现类:kaptcha.background.impl 值:com.google.code.kaptcha.impl.DefaultBackground
背景渐变色开始:kaptcha.background.clear.from 值:r,g,b 或者 white,black,blue
背景渐变色结束:kaptcha.background.clear.to 值:r,g,b 或者 white,black,blue
文字渲染器:kaptcha.word.impl 值:com.google.code.kaptcha.text.impl.DefaultWordRenderer
session中存放验证码的key键:kaptcha.session.key 值:KAPTCHA_SESSION_KEY

你可能感兴趣的:(验证码的制作)