程序员人生 网站导航

[置顶] 工作笔记5.JAVA图片验证码

栏目:互联网时间:2014-11-07 09:02:13

本文主要内容为:利用JAVA图片制作验证码


设计思路:

1、拷贝AuthImageServlet.class图片验证码

2、配置web.xml

3、JSP中,调用封装好的AuthImageServlet,实现加载验证码的功能,

4、取出寄存在Session中的验证码,在Action中判断验证码的正确性


    相比较上1篇博客《工作笔记5.JAVA文本框验证码》而言,图片验证码增加了安全性。

    在Action中,通过取出Session中的验证码与输入的验证码是不是匹配进行判断。


步骤:

1、拷贝AuthImageServlet.class图片验证码

    下载地址:  http://pan.baidu.com/s/1bnF7dcr


2、配置web.xml

<servlet> <servlet-name>AuthImageServlet</servlet-name> <servlet-class>cn.bjjczb.jyzgcx.util.AuthImageServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>AuthImageServlet</servlet-name> <url-pattern>/servlet/AuthImageServlet</url-pattern> </servlet-mapping>


3、JSP中,调用封装好的AuthImageServlet,实现加载验证码的功能

<script type="text/javascript"> function changeCode() {   var imgNode = document.getElementById("vimg");                   //重新加载验证码,到达刷新的目的   imgNode.src = "${pageContext.request.contextPath}/servlet/AuthImageServlet?t=" + Math.random();  // 避免阅读器缓存的问题      } </script>
验证码: <input type="text" id="creditCodes" name="creditCodes" class="dz" style="width: 110px;"/> <img id="vimg" src="${pageContext.request.contextPath}/servlet/AuthImageServlet" class="code" style="vertical-align: middle;" width="83" height="21" /> <a href="#" onclick="changeCode();">刷新</a>


4、取出寄存在Session中的验证码,在Action中判断验证码的正确性

/** 登录 */ public String login() throws Exception { // 获得寄存在Session中的验证码 String creditCode = (String) session.getAttribute("rand"); //比较深输入的"验证码creditCodes"与creditCode是不是匹配(疏忽大小写) if (creditCodes.equalsIgnoreCase(creditCode)) { //验证码输入正确 } else { //验证码输入毛病 } }
//用于获得页面中用户输入的验证码 private String creditCodes; public String getCreditCodes() { return creditCodes; } public void setCreditCodes(String creditCodes) { this.creditCodes = creditCodes; }



    

------分隔线----------------------------
------分隔线----------------------------

最新技术推荐