kaptcha

maven工程,在pom文件中加入依赖包。

<!-- 验证码类 kaptcha -->
<dependency>
	<groupId>com.github.penggle</groupId>
	<artifactId>kaptcha</artifactId>
	<version>2.3.2</version>
</dependency>

然后在web.xml中,配置kaptcha的使用:

<!-- 验证码 -->
<servlet>
	<servlet-name>Kaptcha</servlet-name>
	<servlet-class>com.google.code.kaptcha.servlet.KaptchaServlet</servlet-class>
	<init-param>
		<param-name>kaptcha.textproducer.char.length</param-name>
		<param-value>4</param-value>
	</init-param>
	<init-param>
		<param-name>kaptcha.obscurificator.impl</param-name>
		<param-value>com.google.code.kaptcha.impl.FishEyeGimpy</param-value>
	</init-param>
</servlet>
<servlet-mapping>
	<servlet-name>Kaptcha</servlet-name>
	<url-pattern>/kaptcha.jpg</url-pattern>
</servlet-mapping>

配置验证码的样式,主要的样式可以通过init-param的装载属性,然后在页面上的img标签上面即可直接使用src

kaptcha.jpg直接调用图片。

验证 验证码是否正确

package com.xxx.util;

import javax.servlet.http.HttpServletRequest;

import com.google.code.kaptcha.Constants;

public class VerifyCaptcha {
	public static boolean verify(HttpServletRequest request) {
		// 从session中取出servlet生成的验证码text值
		String expected = (String) request.getSession().getAttribute(Constants.KAPTCHA_SESSION_KEY);
		// 获取用户页面输入的验证码
		String received = request.getParameter("kaptcha");
		return received != null && received.equalsIgnoreCase(expected);
	}
}

kaptcha已经帮我们把验证码的值写入了session中,我们可以通过,获取页面穿过来的参数,自定义判断是否正确。其session的名称是Constants.KAPTCHA_SESSION_KEY

转载于:https://my.oschina.net/xbuding/blog/652451

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值