简单Maven的Web项目之验证码(jcaptcha组件篇)

简单Maven的Web项目之验证码(jcaptcha组件篇)

分类:Maven相关二维码相关

一:JCaptcha简介

jcaptcha是一个开源的用来生成图形验证码的Java开源组件,使用起来也是非常的简单方便。 jcapthca是非常强大的,不光是可以生成图片式的验证码,,还可以生成声音式的(新浪就使用了双重验证码)。 Jcaptcha是CAPTCHA里面的一个比较著名的项目。

二:切换使用JCaptcha生成验证码

1:首先添加需要用到的jar包 注:由于部分jar包maven中央库中没有需要自行添加到本地库,稍后给出jar包的下载地址为 下面是jar包在pom.xml文件中的配置

>commons-collections>>commons-logging>>filters>>jcaptcha-api>>jcaptcha>>jcaptcha-integration-simple-servlet>>servlet-api>provided</scope></dependency>

web.xml文件中servlet的配置,参考下面地址 https://jcaptcha.atlassian.net/wiki/display/general/Simple+Servlet+Integration+documentation

<!DOCTYPE web-app PUBLIC “-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN” “http://java.sun.com/dtd/web-app_2_3.dtd” >>>>/verifyCode/submit.do>>>/jcaptcha.jpg>>

index.jsp页面

<%@ page language=”java” import=”java.util.*” pageEncoding=”UTF-8″%><%String path = request.getContextPath();String basePath = request.getScheme()+”://”+request.getServerName()+”:”+request.getServerPort()+path+”/”;%>>>VerifyCode======><script type=”text/javascript”>var path=”<%=path%>”;$( document ).ready(function() {$(“#codeImg”).on(“click”,function(){$(‘#codeImg’).prop(‘src’,path+’/jcaptcha.jpg?nocache=’+new Date().getTime());});});=====></html>

验证的servlet类

package com.niu.gao;import java.awt.Color;import java.awt.Font;import java.awt.Graphics;import java.awt.image.BufferedImage;import java.io.IOException;import java.util.Random;import javax.imageio.ImageIO;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import com.octo.captcha.module.servlet.image.SimpleImageCaptchaServlet;/** * @Description: (验证验证码Servlet)* @author:relieved * @date:2015-7-25 */{/*** serialVersionUID*/serialVersionUID = 1L;(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException {String codeValue = req.getParameter(“verifyCode”);boolean checkRs = SimpleImageCaptchaServlet.validateResponse(req, codeValue);resp.setCharacterEncoding(“GBK”);resp.setContentType(“text/html”);resp.getWriter().write(“<html><body>”);if(checkRs){resp.getWriter().write(“验证成功!”);}else{resp.getWriter().write(“验证失败!”);}resp.getWriter().write(“<br/><a href=’javascript:history.go(-1);’>再试一次</a>”);resp.getWriter().write(“</body></html>”);}(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException {this.doGet(req, resp);}}

效果图

验证失败图

验证通过图

版权声明:本文为博主原创文章,未经博主允许不得转载。

上一篇简单Maven的Web项目之验证码(普通篇)

顶0踩0

每天告诉自己我很棒!

简单Maven的Web项目之验证码(jcaptcha组件篇)

相关文章:

你感兴趣的文章:

标签云: