`

java中登陆时的验证码(jcaptcha)

阅读更多

 


<%@ page language="java" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    
    <title>我的jsp项目</title>
    <script type="text/javascript" src="http://lib.sinaapp.com/js/jquery/1.7.2/jquery.min.js"></script>
    <style type="text/css">
    	span{
    		color:red;
    	}
    </style>
  </head>
  
  <body>
  	<c:choose>
  		<c:when test="${param.code == '10001'}">
  			<div style="color:red">用户名或密码错误</div>
  		</c:when>
  		<c:when test="${param.code == '10003' }">
  			<div style="color:red">验证码错误</div>
  		</c:when>
  		<c:otherwise>
  			xxxx
  		</c:otherwise>
  	</c:choose>
 	
  	<form action="login.jspx" method="post" id="myform">
  		UserName: <input type="text" name="username"/><span id="name_error"></span> <br/>
  		Password: <input type="password" name="password"/><span id="pwd_error"></span> <br/>
  		验证码:<input type="text" name="captcha"/>
  		<a href="javascript:;" if="changeVailidata"> <img src="jcaptcha.jpg" id="jcaptcha"></a>
  		<input type="submit" value="Login" id="btn"/>
  	</form>
  	
  
  	<script type="text/javascript">
  		$(document).ready(function(){
  		
  		$("#changeVailidata").click(funcition()){
  			$("#jcaptchar").attr("src","jcaptcha.jpg");
  		})
  			$("#btn").click(function(){
  				var name = $("input[name='username']").val();
  				var pwd = $("input[name='password']").val();
  				if(name.trim() == "") {
  					$("#name_error").html("请输入用户名");
  					return;
  				}
  				if(pwd == "") {
  					$("#pwd_error").html("请输入密码");
  					return;
  				}
  				$("#myform").submit();
  				
  			});
  			
  		});
  	
  	</script>
  </body>
</html>
 这里写的验证码用的是jcaptcha插件;到网上可以下载到他的jar包;

 

 以上是验证码配合登陆时,在jsp中的写法;

下面是当在servlet中接受验证码:

 

public class LoginServlet extends HttpServlet {

	private static final long serialVersionUID = 1L;

	public void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		
		String captcha = request.getParameter("captcha");//接受jsp中传过来的验证码;
                //这里必须这么写才能生成验证码;jcaptcha的官网里面有详细的介绍;
		if (SimpleImageCaptchaServlet.validateResponse(request, captcha)) {
			String name = request.getParameter("username");
			String pwd = request.getParameter("password");
			//服务端的验证
			if(name == null || pwd == null) {
				response.sendRedirect("index.jsp");
				return;
			}

			System.out.println("Name:" + name + "\tpwd:" + pwd);
			
			//2.验证用户名和密码是否正确
			UserDao dao = new UserDao();
			User user = dao.findByNameAndPwd(name, pwd);
			if(user != null) {				
				
				//Servlet中获取session
				HttpSession session = request.getSession();
				
				session.setAttribute(Const.USER_IN_SESSION, user);
				response.sendRedirect("prod.jspx");// 登陆成功,重定向跳转到prod.jspx;
			} else {
				response.sendRedirect("index.jspx?code=10001");
			}
		}else {
			response.sendRedirect("index.jspx?code=10003");
		}
	}

}
分享到:
评论

相关推荐

    java验证码组件Jcaptcha

    Java验证码组件Jcaptcha是用于生成安全、动态的图像验证码的工具,主要目的是为了防止自动化的机器人或恶意软件在Web应用程序中进行非法操作,如批量注册、登录等。它通过生成随机字符组合并扭曲图像背景来增加人眼...

    java jcaptcha 验证码 生成

    - **验证用户输入**:用户提交表单时,比对用户输入的验证码文本与会话中保存的验证码文本是否一致,从而完成验证。 4. **源码分析** 对于开发者来说,研究JCaptcha的源码可以更深入理解其内部工作流程。主要涉及...

    java通过JCaptcha生成验证码

    Java 通过 JCaptcha 生成验证码是一项常见的安全技术,用于防止自动化程序(如机器人)非法访问或操作网站。验证码,全称“全自动区分计算机和人类的图灵测试”,是一种验证用户是否为人类的方法。在此,我们将深入...

    基于java的开发源码-Struts验证码插件 JCaptcha4Struts2.zip

    基于java的开发源码-Struts验证码插件 JCaptcha4Struts2.zip 基于java的开发源码-Struts验证码插件 JCaptcha4Struts2.zip 基于java的开发源码-Struts验证码插件 JCaptcha4Struts2.zip 基于java的开发源码-Struts...

    Java验证码生成库 JCaptcha

    Java验证码生成库 JCaptcha

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

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

    JAVA源码Struts验证码插件JCaptcha4Struts2

    JAVA源码Struts验证码插件JCaptcha4Struts2

    java资源Struts验证码插件JCaptcha4Struts2

    java资源Struts验证码插件 JCaptcha4Struts2提取方式是百度网盘分享地址

    JAVA源码Java验证码生成库JCaptcha

    JAVA源码Java验证码生成库JCaptcha

    基于java的Struts验证码插件 JCaptcha4Struts2.zip

    Struts验证码插件JCaptcha4Struts2是一个用于Java Web应用的安全组件,旨在防止自动化的机器人或恶意软件通过表单提交进行欺诈性操作。在Web开发中,验证码(CAPTCHA)是一种常用的方法,用于区分人类用户和计算机...

    java资源Java验证码生成库JCaptcha

    java资源Java验证码生成库 JCaptcha提取方式是百度网盘分享地址

    基于Java的Struts验证码插件 JCaptcha4Struts2.zip

    `JCaptcha4Struts2`是一个专为Struts2设计的验证码插件,它允许开发者轻松集成验证码功能到他们的应用中。 首先,`JCaptcha4Struts2`依赖于`JCaptcha`库,这是一个Java实现的开源验证码生成器。`JCaptcha`提供了一...

    java源码:Java验证码生成库 JCaptcha.rar

    在JCaptcha中,验证码的生成过程可以分为以下几个步骤: 1. 生成随机字符串:JCaptcha会创建一个包含字母和/或数字的随机字符串,作为验证码的内容。 2. 应用扭曲算法:该字符串被转化为图像,并应用各种扭曲效果,...

    基于Java的验证码生成库 JCaptcha.zip

    Java验证码生成库JCaptcha是一个强大的安全工具,用于创建和验证在Web应用中广泛使用的图形验证码。验证码的主要目的是防止自动化的机器人或恶意脚本执行非法操作,例如注册虚假账户、发送垃圾邮件或者进行其他非...

    基于java的验证码生成库 JCaptcha.zip

    Java验证码生成库JCaptcha是一个广泛使用的开源项目,它为Java应用程序提供了强大的安全验证工具。验证码(Completely Automated Public Turing test to tell Computers and Humans Apart)的主要目的是防止自动化...

    java源码:Struts验证码插件 JCaptcha4Struts2.rar

    Struts验证码插件JCaptcha4Struts2是一个用于Java Web应用的安全组件,旨在防止自动...通过深入研究这些源码和配置,你可以掌握将验证码功能集成到Struts2应用中的方法,同时提高对Java Web开发和安全防护的理解。

    Jcaptcha(java验证码生成框架)使用说明(原创)

    Jcaptcha(Java 验证码生成框架)使用说明 一、框架概述 Jcaptcha 是一个 Java 验证码生成框架,提供了详细的说明及例程,通过调查实践后,总结的,希望对大家有帮助。该框架提供了生成验证码图像通用解决办法,...

    通过spring整合jcaptcha来处理验证码

    jCaptcha是一个基于Java的验证码解决方案,它能够生成包括字母、数字、甚至是图片元素在内的复杂验证码。jCaptcha的主要特点是其可定制性,开发者可以根据需要调整验证码的样式、复杂度以及过期时间等参数。 2. **...

    Java验证码生成库 JCaptcha.7z

    总的来说,Java验证码生成库JCaptcha是Java开发者在构建安全Web应用时的一个强大工具。它提供了丰富的定制选项和良好的可扩展性,确保了验证码的效用和安全性。通过阅读提供的文档和示例,开发者能够快速掌握其用法...

    JAVA基于JCaptcha生成验证码图片传给前端

    在Java中,我们可以使用开源库JCaptcha来生成验证码图片,并将其传递给前端以供用户验证。下面将详细介绍如何实现这一过程。 首先,JCaptcha是一个Java CAPTCHA(Completely Automated Public Turing test to tell ...

Global site tag (gtag.js) - Google Analytics