`
java_doc
  • 浏览: 19813 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

Jcaptcha 2.0 一个很好看的验证码程序

    博客分类:
  • java
阅读更多
今天无意中找到一个很好看的验证码程序,向大家分享一下。
下载地址:http://jcaptcha.sourceforge.net/
web.xml如下:
<servlet>
		<servlet-name>jcaptcha</servlet-name>
		<servlet-class>com.octo.captcha.module.servlet.image.SimpleImageCaptchaServlet</servlet-class>
	</servlet>
	<servlet>
		<servlet-name>submit</servlet-name>
		<servlet-class>demo.SubmitActionServlet</servlet-class>
	</servlet>
	<servlet-mapping>
		<servlet-name>jcaptcha</servlet-name>
		<url-pattern>/jcaptcha.jpg</url-pattern>
	</servlet-mapping>
	<servlet-mapping>
		<servlet-name>submit</servlet-name>
		<url-pattern>/submit.action</url-pattern>
	</servlet-mapping>

SubmitActionServlet.java
@Override
	protected void doPost(HttpServletRequest req, HttpServletResponse resp)
			throws ServletException, IOException {
		String userCaptchaResponse = req.getParameter("jcaptcha");
		boolean captchaPassed = SimpleImageCaptchaServlet.validateResponse(req,
				userCaptchaResponse);
		resp.setContentType("text/html");
		resp.setCharacterEncoding("utf-8");
		PrintWriter writer = resp.getWriter();
		StringBuffer sb = new StringBuffer();
		if (captchaPassed) {
			sb.append("<html><body>验证成功</body></html>");
			System.out.println("验证成功");
		} else {
			sb.append("<html>body><font color='red'>验证失败</font></body></html>");
			System.out.println("验证失败");
		}
		writer.println(sb.toString());
		writer.close();
	}

index.jsp
<form action="submit.action" method="post">
     <img src="jcaptcha.jpg" /> <input type="text" name="jcaptcha" value="" />
     <input type="submit"/>
</form>

效果:

  • 大小: 11.4 KB
0
0
分享到:
评论
4 楼 一梦缘 2012-12-04  
导入那几个包啊?
3 楼 C_yi 2010-08-18  
请问为什么每次验证码输入正确,而总是输出“验证失败”,这是什么原因,或者是跟HttpSession引起的?
2 楼 java_doc 2009-09-27  
原因是使用高版本的JDK编译的Java class文件试图在较低版本的JVM上运行。
1 楼 fzfx88 2009-09-27  
好像不行啊,报错了
严重: Allocate exception for servlet jcaptcha
java.lang.UnsupportedClassVersionError: Bad version number in .class file
	at java.lang.ClassLoader.defineClass1(Native Method)
	at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
	at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
	at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:1815)
	at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:869)
	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1322)
	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1201)
	at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
	at java.lang.Class.getDeclaredConstructors0(Native Method)
	at java.lang.Class.privateGetDeclaredConstructors(Class.java:2328)
	at java.lang.Class.getConstructor0(Class.java:2640)
	at java.lang.Class.newInstance0(Class.java:321)
	at java.lang.Class.newInstance(Class.java:303)
	at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1055)
	at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:757)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:130)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
	at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
	at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
	at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
	at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
	at java.lang.Thread.run(Thread.java:595)


相关推荐

    验证码开源组件--Jcaptcha和Kaptcha

    首先,Jcaptcha(Just Another CAPTCHA Toolkit)是一个强大的Java验证码框架,它提供了丰富的定制选项,允许开发者根据自己的需求创建各种类型的验证码。Jcaptcha的核心功能包括: 1. 图像生成:Jcaptcha能够生成...

    jcaptcha咋包及案例

    Jcaptcha,全称为Java CAPTCHA,是一个开源的Java验证码库,旨在为Java应用程序提供高质量、可定制的图像验证码解决方案。 ### Jcaptcha的主要特性 1. **图像生成**:Jcaptcha能够生成随机且难以通过计算机算法...

    jcaptcha 验证码程序

    **jcaptcha验证码程序详解** 验证码(CAPTCHA)是一种防止机器自动操作的安全机制,它通过让用户识别并输入图片中的字符来验证用户是否为真人。在Java开发中,`jcaptcha`是一个广泛使用的开源库,用于生成复杂的...

    验证码 验证码例子 jcaptcha jcaptcha例子

    jCaptcha是Java验证码解决方案的一个开源项目,它提供了丰富的功能和自定义选项,使得开发者能够轻松地在Web应用中集成验证码服务。jCaptcha-1.0-all.jar是这个项目的完整打包文件,包含了所有必要的类和库,可以...

    JCaptcha验证码生成

    本文将深入探讨JCaptcha这个开源组件,它是Java环境下实现验证码生成的一个优秀工具。 JCaptcha(Java CAPTCHA)是一款强大的、可定制的验证码解决方案,由Gregg Sporar开发。它的主要目标是提供一种简单、高效的...

    jcaptcha验证码所需jar包

    1. `filter-2.0.235.jar`:这是一个过滤器库,可能包含了jcaptcha的过滤器组件,用于处理HTTP请求并在Web应用中插入验证码生成和验证的逻辑。过滤器在Servlet容器中运行,可以在请求到达目标Servlet之前进行预处理,...

    jcaptcha 验证完整jar包

    在Java领域,jCaptcha(Java CAPTCHA)是一个流行的开源库,用于生成和验证这种验证码。由于在某些情况下,通过Maven或Gradle直接下载jCaptcha的依赖可能会遇到问题,本文将详细介绍如何在项目中手动引入jCaptcha的...

    JCaptcha

    综上所述,JCaptcha是一个强大且灵活的验证码解决方案,对于任何需要防止恶意自动化操作的Java Web应用来说,都是一个值得考虑的工具。通过深入理解和使用JCaptcha,开发者能够创建出既安全又用户体验良好的验证码...

    jcaptcha图片验证例子

    jcaptcha 图片验证例子。JCaptcha 是一个用来生成验证码的开源Java类库,目前最新的版本是2.0。

    JEECMS2.0版本源码阅读

    JEECMS 作为一个基于 Java 的内容管理系统,具有强大的功能和灵活的架构。阅读 JEECMS 的源码,可以了解到其内部的实现机制和设计理念。在本文中,我们将对 JEECMS 2.0 版本的源码进行阅读和分析,了解其核心组件、...

    jcaptcha4struts2:从 code.google.compjcaptcha4struts2 自动导出

    安装 安装和配置 JCaptcha4Struts2 很简单。 从下载插件的最新版本将 JAR 文件包含在您的 Struts2 应用程序中。 通过在您的操作(处理验证码输入)中扩展提供的基本操作类,或通过配置拦截器来启用 JCaptcha 支持。...

    探讨Java验证码制作(下篇)

    Java验证码的制作是一个重要的安全措施,用于防止自动化程序(如机器人)进行非法操作,比如防止垃圾邮件、恶意注册等。本篇文章将详细讲解如何使用开源组件JCaptcha在Java环境中生成复杂的验证码,以及如何与Spring...

    java开源包11

    JCaptcha4Struts2 是一个 Struts2的插件,用来增加验证码的支持,使用时只需要用一个 JSP 标签 (&lt;jcaptcha:image label="Type the text "/&gt; ) 即可,直接在 struts.xml 中进行配置,使用强大的 JCaptcha来生成验证码...

    java开源包1

    JCaptcha4Struts2 是一个 Struts2的插件,用来增加验证码的支持,使用时只需要用一个 JSP 标签 (&lt;jcaptcha:image label="Type the text "/&gt; ) 即可,直接在 struts.xml 中进行配置,使用强大的 JCaptcha来生成验证码...

    java开源包2

    JCaptcha4Struts2 是一个 Struts2的插件,用来增加验证码的支持,使用时只需要用一个 JSP 标签 (&lt;jcaptcha:image label="Type the text "/&gt; ) 即可,直接在 struts.xml 中进行配置,使用强大的 JCaptcha来生成验证码...

    java开源包3

    JCaptcha4Struts2 是一个 Struts2的插件,用来增加验证码的支持,使用时只需要用一个 JSP 标签 (&lt;jcaptcha:image label="Type the text "/&gt; ) 即可,直接在 struts.xml 中进行配置,使用强大的 JCaptcha来生成验证码...

    java开源包6

    JCaptcha4Struts2 是一个 Struts2的插件,用来增加验证码的支持,使用时只需要用一个 JSP 标签 (&lt;jcaptcha:image label="Type the text "/&gt; ) 即可,直接在 struts.xml 中进行配置,使用强大的 JCaptcha来生成验证码...

    java开源包5

    JCaptcha4Struts2 是一个 Struts2的插件,用来增加验证码的支持,使用时只需要用一个 JSP 标签 (&lt;jcaptcha:image label="Type the text "/&gt; ) 即可,直接在 struts.xml 中进行配置,使用强大的 JCaptcha来生成验证码...

    java开源包10

    JCaptcha4Struts2 是一个 Struts2的插件,用来增加验证码的支持,使用时只需要用一个 JSP 标签 (&lt;jcaptcha:image label="Type the text "/&gt; ) 即可,直接在 struts.xml 中进行配置,使用强大的 JCaptcha来生成验证码...

    java开源包4

    JCaptcha4Struts2 是一个 Struts2的插件,用来增加验证码的支持,使用时只需要用一个 JSP 标签 (&lt;jcaptcha:image label="Type the text "/&gt; ) 即可,直接在 struts.xml 中进行配置,使用强大的 JCaptcha来生成验证码...

Global site tag (gtag.js) - Google Analytics