转载:http://blog.ntsky.com/simplecaptcha.html
使用SimpleCaptcha可以方便灵活的生成各种验证码。
下载SimpleCaptcha : http://sourceforge.net/project/platformdownload.php?group_id=147810&sel_platform=13579
添加到ClassPath中,在web.xml中的设置:
XML/HTML代码
<servlet> <servlet-name>Captcha</servlet-name> <servlet-class>nl.captcha.servlet.CaptchaServlet</servlet-class> <init-param> <param-name>cap.font.color</param-name> <param-value>0,0,255</param-value> </init-param> <init-param> <param-name>cap.char.arr</param-name> <param-value>1,2,3,4,5,6,7,8,9,0</param-value> </init-param> <init-param> <param-name>cap.border</param-name> <param-value>yes</param-value> </init-param> <init-param> <param-name>cap.border.c</param-name> <param-value>black</param-value> </init-param> <init-param> <param-name>cap.border.th</param-name> <param-value>1</param-value> </init-param> <init-param> <param-name>cap.background.c.to</param-name> <param-value>255,255,255</param-value> </init-param> <init-param> <param-name>cap.background.c.from</param-name> <param-value>255,255,255</param-value> </init-param> </servlet> <servlet-mapping> <servlet-name>Captcha</servlet-name> <url-pattern>/servlet/Captcha.jpg</url-pattern> </servlet-mapping>
html中增加<img style="border:0;" id="captchaImg" src="/servlet/Captcha.jpg" border="0"/>
验证码效果图片:
Java代码中可以通过req.getSession().getAttribute("SIMPLE_CAPCHA_SESSION_KEY")来取得验证码的值。
注意:
LINUX操作系统没有装x11的情况下,需要注释nl.captcha.text.imp.DefaultWordRenderer类的
XML/HTML代码
/* GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment(); GraphicsDevice gd = ge.getDefaultScreenDevice(); GraphicsConfiguration gc = gd.getDefaultConfiguration(); */
- 不然会有错误。