全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

VerifyCodeServlet(一次性验证码)

通过在表单中总是需要使用一次性验证码,这一问题可以使用VerifyCodeServlet来处理。让<img>元素的src指向VerifyCodeServlet即可在页面中生成一次性验证码。而且VerifyCodeServlet还会把验证码保存到session中,名称为:vCode,也就是说,你可以通过session来获取验证码文本:session.getAttribute(“vCode”)。

web.xml

<servlet>
 <servlet-name>VerifyCodeServlet</servlet-name>
 <servlet-class>cn.itcast.vcode.servlet.VerifyCodeServlet</servlet-class>
</servlet>
<servlet-mapping>
 <servlet-name>VerifyCodeServlet</servlet-name>
 <url-pattern>/VerifyCodeServlet</url-pattern>
</servlet-mapping>

MyJsp.jsp

<form action="<c:url value='/UserServlet'/>" method="post">
  <input type="hidden" name="method" value="regist"/>
  验证码:<input type="text" name="verifyCode"/>
<!--让<img>的src指向VerifyCodeServlet即可生成一次性验证码-->
  <img src="<c:url value='/VerifyCodeServlet'/>" border="1"/><br/>
  <input type="submit" value="注册"/>
</form>

因为用户可能看不清楚图片上的文本,所以我们需要给用户提供一个“换一张”超链接。其实实现这一步很简单,只需要使用javascript让<img>元素src指向VerifyCodeServlet即可。但因为浏览器可能会缓存上一次生成的图片,所以我们还需要使用时间为参数“强迫”浏览器访问服务器,而不是使用缓存。

MyJsp.jsp

<script type="text/javascript" src="<c:url value='/js/jquery-1.5.1.js'/>"></script>
  <script type="text/javascript">
  //在点击“换一张”时会调用本方法
    function change() {
      $("#img").attr("src", "<c:url value='/VerifyCodeServlet?'/>" + new Date().getTime());//指定<img>元素的src属性值为VerifyCodeServlet,并且追加参数为当前时间毫秒,它是不会重复的值,所以浏览器不会使用缓存,而是访问服务器。
    }
  </script>
…
<form action="<c:url value='/UserServlet'/>" method="post">
  <input type="hidden" name="method" value="regist"/>
  验证码:<input type="text" name="verifyCode"/>
<!-- 指定id为img,方法使用jquery来查找该元素-->
  <img id="img" src="<c:url value='/VerifyCodeServlet'/>" border="1"/>
  <a href="javascript:change();" rel="external nofollow" >换一张</a><!--点击该超链接会调用change()方法-->
  <br/>
  <input type="submit" value="注册"/>
</form>

当用户在表单中填写了验证码,而且提交了表单,到达UserServlet的regist()方法,在regist() 方法中需要比较用户在表单中输入的验证码,与验证码图片上的文本是否相同。

获取用户输入的验证码:request.getParameter(“verifyCode”);
获取图片上的验证码:session.getAttribute(“vCode”);

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# VerifyCodeServlet  # 验证码  # java仿Servlet生成验证码实例详解  # JSP + Servlet实现生成登录验证码示例  # java Servlet 实现动态验证码图片示例  # java使用servlet实现验证码  # Javaweb开发中通过Servlet生成验证码图片  # jsp+Servlet编程实现验证码的方法  # jsp引用servlet生成的验证码代码演示  # 表单  # 超链接  # 这一  # 你可以  # 它是  # 上一  # 可在  # 很简单  # 写了  # 还需要  # 时间为  # 只需要  # 可以使用  # 会把  # 提供一个  # 看不  # 值为  # 大家多多  # 而不是 


相关文章: 外汇网站制作流程,如何在工商银行网站上做外汇买卖?  建站DNS解析失败?如何正确配置域名服务器?  Swift中switch语句区间和元组模式匹配  css网站制作参考文献有哪些,易聊怎么注册?  制作网站建设的公司有哪些,网站建设比较好的公司都有哪些?  制作证书网站有哪些,全国城建培训中心证书查询官网?  重庆网站制作公司哪家好,重庆中考招生办官方网站?  微信小程序制作网站有哪些,微信小程序需要做网站吗?  文字头像制作网站推荐软件,醒图能自动配文字吗?  上海制作企业网站有哪些,上海有哪些网站可以让企业免费发布招聘信息?  建站之星安装提示数据库无法连接如何解决?  广东企业建站网站优化与SEO营销核心策略指南  网站按钮制作软件,如何实现网页中按钮的自动点击?  头像制作网站在线观看,除了站酷,还有哪些比较好的设计网站?  如何用VPS主机快速搭建个人网站?  如何快速查询域名建站关键信息?  如何用搬瓦工VPS快速搭建个人网站?  定制建站价位费用解析与套餐推荐全攻略  如何用低价快速搭建高质量网站?  长沙企业网站制作哪家好,长沙水业集团官方网站?  建站之星2.7模板:企业网站建设与h5定制设计专题  专业制作网站的公司哪家好,建立一个公司网站的费用.有哪些部分,分别要多少钱?  如何通过建站之星自助学习解决操作问题?  长春网站建设制作公司,长春的网络公司怎么样主要是能做网站的?  浙江网站制作公司有哪些,浙江栢塑信息技术有限公司定制网站做的怎么样?  制作销售网站教学视频,销售网站有哪些?  如何快速选择适合个人网站的云服务器配置?  打鱼网站制作软件,波克捕鱼官方号怎么注册?  h5在线制作网站电脑版下载,h5网页制作软件?  如何用PHP快速搭建CMS系统?  javascript基本数据类型及类型检测常用方法小结  宝塔新建站点报错如何解决?  如何在Golang中指定模块版本_使用go.mod控制版本号  php能控制zigbee模块吗_php通过串口与cc2530 zigbee通信【介绍】  javascript中对象的定义、使用以及对象和原型链操作小结  网站制作需要会哪些技术,建立一个网站要花费多少?  如何通过IIS搭建网站并配置访问权限?  内部网站制作流程,如何建立公司内部网站?  Swift中循环语句中的转移语句 break 和 continue  如何在景安云服务器上绑定域名并配置虚拟主机?  免费公司网站制作软件,如何申请免费主页空间做自己的网站?  如何在宝塔面板中创建新站点?  网站好制作吗知乎,网站开发好学吗?有什么技巧?  ppt在线制作免费网站推荐,有什么下载免费的ppt模板网站?  小说建站VPS选用指南:性能对比、配置优化与建站方案解析  高性能网站服务器配置指南:安全稳定与高效建站核心方案  如何实现建站之星域名转发设置?  如何在沈阳梯子盘古建站优化SEO排名与功能模块?  为什么Go需要go mod文件_Go go mod文件作用说明  网站制作企业,网站的banner和导航栏是指什么? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。