通过在表单中总是需要使用一次性验证码,这一问题可以使用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生成的验证码代码演示
# 表单
# 超链接
# 这一
# 你可以
# 它是
# 上一
# 可在
# 很简单
# 写了
# 还需要
# 时间为
# 只需要
# 可以使用
# 会把
# 提供一个
# 看不
# 值为
# 大家多多
# 而不是
相关文章:
宁波自助建站系统如何快速打造专业企业网站?
盐城做公司网站,江苏电子版退休证办理流程?
详解一款开源免费的.NET文档操作组件DocX(.NET组件介绍之一)
Swift开发中switch语句值绑定模式
linux top下的 minerd 木马清除方法
如何零成本快速生成个人自助网站?
建站之星后台密码如何安全设置与找回?
学生网站制作软件,一个12岁的学生写小说,应该去什么样的网站?
高防服务器租用指南:配置选择与快速部署攻略
如何快速打造个性化非模板自助建站?
公司网站设计制作厂家,怎么创建自己的一个网站?
简历在线制作网站免费,免费下载个人简历的网站是哪些?
建站之星如何快速生成多端适配网站?
网站图片在线制作软件,怎么在图片上做链接?
,怎么在广州志愿者网站注册?
北京建设网站制作公司,北京古代建筑博物馆预约官网?
合肥制作网站的公司有哪些,合肥聚美网络科技有限公司介绍?
在线ppt制作网站有哪些,请推荐几个好的课件下载的网站?
建站之星价格显示格式升级,你的预算足够吗?
如何用wdcp快速搭建高效网站?
制作农业网站的软件,比较好的农业网站推荐一下?
音乐网站服务器如何优化API响应速度?
大同网页,大同瑞慈医院官网?
专业制作网站的公司哪家好,建立一个公司网站的费用.有哪些部分,分别要多少钱?
高性能网站服务器配置指南:安全稳定与高效建站核心方案
香港网站服务器数量如何影响SEO优化效果?
哪家制作企业网站好,开办像阿里巴巴那样的网络公司和网站要怎么做?
网站网页制作专业公司,怎样制作自己的网页?
网站制作模板下载什么软件,ppt模板免费下载网站?
如何登录建站主机?访问步骤全解析
如何通过cPanel快速搭建网站?
网站制作服务平台,有什么网站可以发布本地服务信息?
公司网站制作需要多少钱,找人做公司网站需要多少钱?
如何零基础开发自助建站系统?完整教程解析
建站三合一如何选?哪家性价比更高?
如何高效利用200m空间完成建站?
如何高效配置香港服务器实现快速建站?
网站制作公司,橙子建站是合法的吗?
C++ static_cast和dynamic_cast区别_C++静态转换与动态类型安全转换
相亲简历制作网站推荐大全,新相亲大会主持人小萍萍资料?
网站企业制作流程,用什么语言做企业网站比较好?
建站之星后台密码遗忘或太弱?如何重置与强化?
官网自助建站平台指南:在线制作、快速建站与模板选择全解析
如何在IIS中配置站点IP、端口及主机头?
代刷网站制作软件,别人代刷火车票靠谱吗?
如何在阿里云部署织梦网站?
成都品牌网站制作公司,成都营业执照年报网上怎么办理?
建站之星logo尺寸如何设置最合适?
如何配置支付宝与微信支付功能?
如何快速生成可下载的建站源码工具?
*请认真填写需求信息,我们会在24小时内与您取得联系。