工作笔记5.JAVA图片验证码
本文主要内容为:利用JAVA图片制作验证码。
设计思路:
1、拷贝AuthImageServlet.class图片验证码
2、配置web.xml
3、JSP中,调用封装好的AuthImageServlet,实现载入验证码的功能。
4、取出存放在Session中的验证码。在Action中推断验证码的正确性
相比較上一篇博客《工作笔记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;
}
工作笔记5.JAVA图片验证码的更多相关文章
- Java 图片验证码工具
package com.microwisdom.utils; import java.awt.Color; import java.awt.Font; import java.awt.Graphics ...
- 问题记录-java图片验证码显示乱码
部署机器 操作系统:centos 7 java版本: java version "1.7.0_80" 问题症状 将一个java web的程序部署到了两台配置相同的服务器上之后(服务 ...
- JAVA图片验证码
package hh.com.util; import java.io.IOException; import javax.servlet.ServletException; import javax ...
- 自己封装的一个java图片验证码
验证码生成器: package com.lz.Tools; import java.awt.Color; import java.awt.Font; import java.awt.Graphics; ...
- JAVA图片验证码(转自“云在青山”)
首先创建一个生成图片的类,设置一些请求参数,生成随机的字符串,然后字符串传给生成验证码图片的类进行处理,完成后输出到页面 1.创建验证码生成类 package hh.com.util; import ...
- 一篇Java图片验证码生成的代码
package projectUtil; /** * @author tian * @date 2019/4/1015:58 */ import javax.imageio.ImageIO; impo ...
- Java图片验证码生成工具
直接把以下代码拷贝使用: import javax.imageio.ImageIO;import java.awt.*;import java.awt.image.BufferedImage;impo ...
- ASP.NET工作笔记之一:图片上传预览及无刷新上传
转自:http://www.cnblogs.com/sibiyellow/archive/2012/04/27/jqueryformjs.html 最近项目里面涉及到无刷新上传图片的功能,其实也就是上 ...
- Java图片验证码乱码问题
有时部署到linux服务器上的web项目的图形验证码可能会出现乱码问题 这不是编码格式出错了,而是可能服务器上没有图形验证码中限定的那种字体 比如生成图形验证码的代码: Font font = new ...
随机推荐
- poj2411 Mondriaan's Dream (状压dp+多米诺骨牌问题)
这道题的解析这个博客写得很好 https://blog.csdn.net/shiwei408/article/details/8821853 大致意思就是我们可以只处理两行之间的关系,然后通过这两个关 ...
- codevs——T1814 最长链
http://codevs.cn/problem/1814/ 时间限制: 1 s 空间限制: 256000 KB 题目等级 : 钻石 Diamond 题解 查看运行结果 题目描述 De ...
- ftp for linux 配置
曾经配的熟悉的不能再熟悉了的东西,多年不用就忘了. 好真是好记性不如烂笔头.本文假如你已经安装好了, 1,ftp默认是不同意root用户登录的,假设要root用户登录,请例如以下改动:打开/etc/v ...
- IOS Sqlite用户界面增删改查案例
1.案例简单介绍 对SQLite操作进行了简单的封装,将对数据表操作转变成对对象的操作,并通过UI界面完毕对用户表的增.删.改.查,执行界面例如以下图所看到的 a 2.项目project文件夹 Use ...
- U盘无法格式化的恢复
昨天装Ubuntu的系统可能把U盘搞崩溃了.然后今早起来U盘无法识别,格式化也不行,用Windows的磁盘管理工具格式化说是:Windows无法格式化U盘. 曾经没遇到这样的情况,所以百度了一下,试了 ...
- 推断CPU 是小端存储(Little endian)还是大端存储(Big endian)模式
第一个版本号: //return true in big-endian machines bool check_big_endian1() { int a = 0; int *p = &a; ...
- Qt 3D教程(三)实现对模型材质參数的控制
Qt 3D教程(三)实现对模型材质參数的控制 蒋彩阳原创文章,首发地址:http://blog.csdn.net/gamesdev/article/details/47131841.欢迎同行前来探讨. ...
- Android-Volley网络通信框架(自己定义Request 请求:实现 GsonRequest)
1.回想 上篇学习了android 通过 volley 网络通信框架 实现 请求图片的三种方法! 2.重点 (1)复习和熟悉 StringRequest ,JsonObjectRequest 方法 ( ...
- iOS开发 之 不要告诉我你真的懂isEqual与hash!
目录 为什么要有isEqual方法? 如何重写自己的isEqual方法? 为什么要有hash方法? hash方法什么时候被调用? hash方法与判等的关系? 如何重写自己的hash方法? 为什么要有i ...
- xmanager使用
Xmanager全称Netsarang Xmanager,是国外一套非常优秀的远程监控软件.在UNIX/Linux和Windows网络环境中,Xmanager是最好的连通解决方案.我推 荐大家下载En ...