google kaptcha的使用
下载jar文件
http://kaptcha.googlecode.com/files/kaptcha-2.3.2.zip
配置web.xml
<servlet> <servlet-name>Kaptcha</servlet-name> <servlet-class> com.google.code.kaptcha.servlet.KaptchaServlet </servlet-class> <init-param> <param-name>kaptcha.image.width</param-name> <param-value>65</param-value> </init-param> <init-param> <param-name>kaptcha.image.height</param-name> <param-value>30</param-value> </init-param> <init-param> <param-name>kaptcha.textproducer.char.length</param-name> <param-value>4</param-value> </init-param> <!-- 字体大小 --> <init-param> <param-name>kaptcha.textproducer.font.size</param-name> <param-value>25</param-value> </init-param> <!-- 字体颜色 --> <init-param> <param-name>kaptcha.textproducer.font.color</param-name> <param-value>black</param-value> </init-param> <init-param> <param-name>kaptcha.background.impl</param-name> <param-value> com.google.code.kaptcha.impl.DefaultBackground </param-value> </init-param> <init-param> <param-name>kaptcha.obscurificator.impl</param-name> <param-value> com.google.code.kaptcha.impl.ShadowGimpy </param-value> </init-param> <init-param><!-- 背景颜色 --> <param-name>kaptcha.background.clear.to</param-name> <param-value>white</param-value> </init-param> <init-param><!-- 干扰线颜色 --> <param-name>kaptcha.noise.color</param-name> <param-value>black</param-value> </init-param> <!-- 如果需要全部数字 --> <init-param> <param-name>kaptcha.textproducer.char.string</param-name> <param-value>0123456789</param-value> </init-param> <!-- 去掉干扰线 --> <init-param> <param-name>kaptcha.noise.impl</param-name> <param-value>com.google.code.kaptcha.impl.NoNoise </param-value> </init-param> </servlet> <servlet-mapping> <servlet-name>Kaptcha</servlet-name> <url-pattern>/kaptcha.jpg</url-pattern> </servlet-mapping>
jsp页面显示
<img src="kaptcha.jpg" id="img" οnclick="flashImg()"/>
<form method="post">
<input type="text" name="codeImg"/>
<input type="submit" value="提交"/>
</form>
<script type="text/javascript">
function flashImg(){
document.getElementById("img").src="${pageContext.request.contextPath}/kaptcha.jpg?"+Math.floor(Math.random()*100);
}
</script>
<%
String c = (String)session.getAttribute(com.google.code.kaptcha.Constants.KAPTCHA_SESSION_KEY);
String parm = (String)request.getParameter("codeImg");
out.println("param: " + parm + " ? Key: " + c + " : ");
if (c != null && parm != null) {
if (c.equals(parm)) {
out.println("<b>true</b>");
} else {
out.println("<b>false</b>");
}
}
%>