一、生成验证码
1.导入jar包
2.写页面
3.写验证
4.配置web.xml
二、详细配置
1 <init-param> 2 <description>图片边框,合法值:yes , no</description> 3 <param-name>kaptcha.border</param-name> 4 <param-value>yes</param-value> 5 </init-param> 6 <init-param> 7 <description> 8 边框颜色,合法值: r,g,b (and optional alpha) 或者 9 white,black,blue. 10 </description> 11 <param-name>kaptcha.border.color</param-name> 12 <param-value>black</param-value> 13 </init-param> 14 <init-param> 15 <description>边框厚度,合法值:>0</description> 16 <param-name>kaptcha.border.thickness</param-name> 17 <param-value>1</param-value> 18 </init-param> 19 <init-param> 20 <description>图片宽 200</description> 21 <param-name>kaptcha.image.width</param-name> 22 <param-value>200</param-value> 23 </init-param> 24 <init-param> 25 <description>图片高 50</description> 26 <param-name>kaptcha.image.height</param-name> 27 <param-value>50</param-value> 28 </init-param> 29 <init-param> 30 <description>图片实现类</description> 31 <param-name>kaptcha.producer.impl</param-name> 32 <param-value> 33 com.google.code.kaptcha.impl.DefaultKaptcha 34 </param-value> 35 </init-param> 36 <init-param> 37 <description>文本实现类</description> 38 <param-name>kaptcha.textproducer.impl</param-name> 39 <param-value> 40 com.google.code.kaptcha.text.impl.DefaultTextCreator 41 </param-value> 42 </init-param> 43 <init-param> 44 <description>文本集合,验证码值从此集合中获取</description> 45 <param-name>kaptcha.textproducer.char.string</param-name> 46 <param-value>1234567890</param-value> 47 </init-param> 48 <init-param> 49 <description>验证码长度 5</description> 50 <param-name>kaptcha.textproducer.char.length</param-name> 51 <param-value>2</param-value> 52 </init-param> 53 <init-param> 54 <description>字体 Arial, Courier</description> 55 <param-name>kaptcha.textproducer.font.names</param-name> 56 <param-value>Arial, Courier</param-value> 57 </init-param> 58 <init-param> 59 <description>字体大小 40px.</description> 60 <param-name>kaptcha.textproducer.font.size</param-name> 61 <param-value>40</param-value> 62 </init-param> 63 <init-param> 64 <description> 65 字体颜色,合法值: r,g,b 或者 white,black,blue. 66 </description> 67 <param-name>kaptcha.textproducer.font.color</param-name> 68 <param-value>black</param-value> 69 </init-param> 70 <init-param> 71 <description>文字间隔 2</description> 72 <param-name>kaptcha.textproducer.char.space</param-name> 73 <param-value>2</param-value> 74 </init-param> 75 <init-param> 76 <description>干扰实现类</description> 77 <param-name>kaptcha.noise.impl</param-name> 78 <param-value> 79 <!-- com.google.code.kaptcha.impl.NoNoise --> 80 com.google.code.kaptcha.impl.DefaultNoise 81 </param-value> 82 </init-param> 83 <init-param> 84 <description> 85 干扰颜色,合法值: r,g,b 或者 white,black,blue. 86 </description> 87 <param-name>kaptcha.noise.color</param-name> 88 <param-value>black</param-value> 89 </init-param> 90 <init-param> 91 <description> 92 图片样式: 水纹com.google.code.kaptcha.impl.WaterRipple 93 鱼眼com.google.code.kaptcha.impl.FishEyeGimpy 94 阴影com.google.code.kaptcha.impl.ShadowGimpy 95 </description> 96 <param-name>kaptcha.obscurificator.impl</param-name> 97 <param-value> 98 com.google.code.kaptcha.impl.WaterRipple 99 </param-value> 100 </init-param> 101 <init-param> 102 <description>背景实现类</description> 103 <param-name>kaptcha.background.impl</param-name> 104 <param-value> 105 com.google.code.kaptcha.impl.DefaultBackground 106 </param-value> 107 </init-param> 108 <init-param> 109 <description>背景颜色渐变,开始颜色</description> 110 <param-name>kaptcha.background.clear.from</param-name> 111 <param-value>green</param-value> 112 </init-param> 113 <init-param> 114 <description>背景颜色渐变,结束颜色</description> 115 <param-name>kaptcha.background.clear.to</param-name> 116 <param-value>white</param-value> 117 </init-param> 118 <init-param> 119 <description>文字渲染器</description> 120 <param-name>kaptcha.word.impl</param-name> 121 <param-value> 122 com.google.code.kaptcha.text.impl.DefaultWordRenderer 123 </param-value> 124 </init-param> 125 <init-param> 126 <description> 127 session中存放验证码的key键 128 </description> 129 <param-name>kaptcha.session.key</param-name> 130 <param-value>KAPTCHA_SESSION_KEY</param-value> 131 </init-param> 132 <init-param> 133 <description> 134 The date the kaptcha is generated is put into the 135 HttpSession. This is the key value for that item in the 136 session. 137 </description> 138 <param-name>kaptcha.session.date</param-name> 139 <param-value>KAPTCHA_SESSION_DATE</param-value> 140 </init-param>
三、算式验证码的实现——>重写KapthaServlet类
1. 获取随机值,结果相加
2.将计算公式写到验证码图片中
3.将相加结果放在session中