使用Kaptcha 生成验证码十分简单并且参数可以进行自定义,以下简单记录下使用步骤。

1.在pom.xml中添加maven依赖:
<dependency> <groupId>com.google.code.kaptcha</groupId> <artifactId>kaptcha</artifactId> <version>2.3</version> <classifier>jdk15</classifier> </dependency>
2.web.xml中配置kaptcha属性:
<bean id="verifyCodeProducer" class="com.google.code.kaptcha.impl.DefaultKaptcha">
<property name="config">
<bean class="com.google.code.kaptcha.util.Config">
<constructor-arg>
<props>
<prop key="kaptcha.border">yes</prop>
<prop key="kaptcha.border.color">105,179,90</prop>
<prop key="kaptcha.border.thickness">1</prop>
<prop key="kaptcha.noise.color">blue</prop>
<prop key="kaptcha.image.width">150</prop>
<prop key="kaptcha.image.height">50</prop>
<prop key="kaptcha.session.key">verifyCode</prop>
<!-- <prop key="kaptcha.textproducer.char.string">0123456789abcdefghijklmnopqrst!@#$%^*</prop> -->
<prop key="kaptcha.textproducer.char.length">4</prop>
<prop key="kaptcha.textproducer.char.space">4</prop>
<prop key="kaptcha.textproducer.font.size">30</prop>
<prop key="kaptcha.textproducer.font.color">blue</prop>
</props>
</constructor-arg>
</bean>
</property>
</bean>
其中bean节点的id值 verifyCodeProducer 为在类中引用@Resource生成实例时的名称;属性配置中 kaptcha.session.key 的值为在session中存取名称。
在servlet节点中配置
3.controller类中的相关方法:
@Controller
public class CommonController {
@Autowired
private Producer verifyCodeProducer;
@RequestMapping(path = "/getVerifyCodeImage", method = RequestMethod.GET)
public void getVerifyCodeImage(HttpServletRequest request, HttpServletResponse response) {
HttpSession session = request.getSession();
ResponseUtils.noCache(response);
response.setContentType("image/jpeg");
String capText = verifyCodeProducer.createText();
session.setAttribute(Constants.SESSION_KEY_VERIFY_CODE, capText);
BufferedImage bi = verifyCodeProducer.createImage(capText);
ServletOutputStream out = null;
try {
out = response.getOutputStream();
ImageIO.write(bi, "jpg", out);
out.flush();
} catch (Exception ex) {
LOGGER.error("Failed to produce the verify code image: ", ex);
throw new ServerInternalException("Cannot produce the verify code image.");
} finally {
IOUtils.closeQuietly(out);
}
}
}
Constants.SESSION_KEY_VERIFY_CODE为属性配置中 kaptcha.session.key 的值。
4.jsp:
<div class="form-group has-feedback">
<span class="glyphicon glyphicon-barcode form-control-feedback"></span>
<input id="verifyCode" name="verifyCode" type="text" maxlength="4" class="form-control" placeholder="<spring:message code='login.label.code' />" />
<div style="height: 1px"></div>
<img src="${pageContext.request.contextPath}/getVerifyCodeImage" id="verifyCodeImage" style="margin-bottom: -3px" />
<a href="#" rel="external nofollow" onclick="changeVerifyCode()"><spring:message code='login.code.tip' /></a>
</div>
function changeVerifyCode() {
$('#verifyCodeImage').hide().attr('src', '${pageContext.request.contextPath}/getVerifyCodeImage?' + Math.floor(Math.random()*100) ).fadeIn();
event.cancelBubble=true;
}
5.kaptcha属性说明:
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# kaptcha
# spring
# mvc
# springmvc
# 验证码生成
# springmvc配置kaptcha
# springMVC实现图形验证码(kaptcha)代码实例
# Google Kaptcha 框架实现登录验证码功能(SSM 和 SpringBoot)
# SpringBoot集成kaptcha验证码
# springboot整合kaptcha验证码的示例代码
# SpringMvc使用GoogleKaptcha生成验证码
# SpringBoot 集成Kaptcha实现验证码功能实例详解
# 登陆验证码kaptcha结合spring boot的用法详解
# Spring boot如何集成kaptcha并生成验证码
# 验证码
# 默认为
# 类中
# 噪点
# 自定义
# 值为
# 大家多多
# servlet
# Resource
# Controller
# public
# CommonController
相关文章:
如何做网站制作流程,*游戏网站怎么搭建?
定制建站模板如何实现SEO优化与智能系统配置?18字教程
建站之星安装后界面空白如何解决?
php条件判断怎么写_ifelse和switchcase的使用区别【对比】
保定网站制作方案定制,保定招聘的渠道有哪些?找工作的人一般都去哪里看招聘信息?
如何快速搭建虚拟主机网站?新手必看指南
做企业网站制作流程,企业网站制作基本流程有哪些?
如何在阿里云虚拟主机上快速搭建个人网站?
网站制作公司,橙子建站是合法的吗?
上海网站制作网站建设公司,建筑电工证网上查询系统入口?
如何撰写建站申请书?关键要点有哪些?
建站主机选哪家性价比最高?
合肥做个网站多少钱,合肥本地有没有比较靠谱的交友平台?
小捣蛋自助建站系统:数据分析与安全设置双核驱动网站优化
免费公司网站制作软件,如何申请免费主页空间做自己的网站?
小建面朝正北,A点实际方位是否存在偏差?
网站微信制作软件,如何制作微信链接?
如何快速辨别茅台真假?关键步骤解析
常州自助建站:操作简便模板丰富,企业个人快速搭建网站
网站制作大概要多少钱一个,做一个平台网站大概多少钱?
如何快速搭建高效WAP手机网站吸引移动用户?
长春网站建设制作公司,长春的网络公司怎么样主要是能做网站的?
XML的“混合内容”是什么 怎么用DTD或XSD定义
建站之星安装失败:服务器环境不兼容?
,南京靠谱的征婚网站?
如何有效防御Web建站篡改攻击?
,怎么在广州志愿者网站注册?
单页制作网站有哪些,朋友给我发了一个单页网站,我应该怎么修改才能把他变成自己的呢,请求高手指点迷津?
如何通过老薛主机一键快速建站?
网站制作壁纸教程视频,电脑壁纸网站?
nginx修改上传文件大小限制的方法
如何在景安云服务器上绑定域名并配置虚拟主机?
微网站制作教程,不会写代码,不会编程,怎么样建自己的网站?
如何快速启动建站代理加盟业务?
如何解决ASP生成WAP建站中文乱码问题?
建站之星CMS五站合一模板配置与SEO优化指南
实现虚拟支付需哪些建站技术支撑?
如何在阿里云服务器自主搭建网站?
网站app免费制作软件,能免费看各大网站视频的手机app?
如何基于云服务器快速搭建个人网站?
如何将凡科建站内容保存为本地文件?
西安市网站制作公司,哪个相亲网站比较好?西安比较好的相亲网站?
,交易猫的商品怎么发布到网站上去?
如何用免费手机建站系统零基础打造专业网站?
广州建站公司哪家好?十大优质服务商推荐
如何通过FTP服务器快速搭建网站?
行程制作网站有哪些,第三方机票电子行程单怎么开?
如何快速搭建安全的FTP站点?
C#怎么使用委托和事件 C# delegate与event编程方法
制作表格网站有哪些,线上表格怎么弄?
*请认真填写需求信息,我们会在24小时内与您取得联系。