HttpServletResponse-生成验证码

步骤(主要使用了ajax)

1.导入别人写好的验证码类
2.在jsp页面实现写好的验证码
3.在servlet中验证输入的验证码与生成的验证码是否一样
4.如果验证成功放行

实现

1.jsp页面(显示验证码的页面)
<script>
/*
自定义校验规则,用于判断验证码是否正确(一定要放在jsp页面,原因未知)
*/
$.validator.addMethod(
//规则的名称
"check_checkCode",
//校验的函数
function(value,element,params){
var flag = false;
$.ajax({
"async":false,//是否异步(false为不异步)(如果异步的话,这里运行不到就会有返回值出去)
"url":"${pageContext.request.contextPath}/checkCheckCode",//需要访问的地址
"data":{"checkCode":value},//发送的数据(发送给服务器)(这个值是我们所写的用户名)
"type":"POST",//提交方式
"dataType":"json",//指定返回的数据类型
"success":function(data){//成功会运行这个函数(回调函数)
flag = data.isEqual;
}
});
//返回false代表该校验器不通过
return flag;
}

);

</script>
<body>
<img src="${pageContext.request.contextPath }/checkImg" alt="点击刷新"  οnclick="this.src='${pageContext.request.contextPath }/checkImg?s='+new Date().getTime()" /><!--后面附加的‘s’只是为验证码能够点击切换-->
</body>



2.servlet.java页面: checkCheckCode.java(处理验证码)
//比较验证码(验证码区分大小写)
String checkCode_client = request.getParameter("checkCode");//输入的验证码
String checkCode_session = (String)request.getSession().getAttribute("code");//生成图片的验证码
boolean isEqual = false;

if(checkCode_session.equals(checkCode_client)){
isEqual = true;
}

String json = "{\"isEqual\":"+isEqual+"}";//把他变成JSON类型的值并返回
//System.out.println("1111111111111111111");
response.getWriter().write(json);



3.js代码(这部分代码是ajax异步查询中对应验证码的代码)
$(function(){
$("#CheckForm").validate({
rules:{
"checkCode":{
"required":true,
"check_checkCode":true,
//equalTo:"[name='checkCode2']"
},    
},
messages:{
"checkCode":{
"required":"验证码不能为空!",
"check_checkCode":"验证码输入错误",
},
 },
});
});

5.图示


只要输入正确这个错误提示会自动消失,分辨大小写



6.验证码类(百度过来的)

别人的劳动成果我就不贴了

7.需要使用的插件

gson-2.2.4.jar:用于JSON的转换插件(google公司开发的)//好像没使用


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值