大家好,又见面了,我是你们的朋友全栈君。
验证码原理分析及实现
一、前言
最近学习实现了验证码,首先附图效果如下:(
简单说明:
分别提交正确、错误的验证码及对应效果
本文是图文结合说明)
二、验证码的作用
验证码是目前大多网站所支持并使用于注册登录的。就在于其作用能有效防止恶意登录注册,验证码每次都不同,
这就可以排除,用其他病毒或者软件自动申请用户及自动登陆.有效防止这种问题。
三、原理及知识点分析
1.原理
验证码于服务器端生成,发送给客户端,并以图像格式显示。客户端提交所显示的验证码,客户端接收并进行比较,若比对失败则不能实现登录或注册,反之成功后跳转相应界面。
2.主要知识
服务器端的相关实现,前端运用 HTML 5,CSS 3 ,(可空白留给美工实现,须有 HTML 基础知识)。
主要是三部分:
(提交界面, 成功及失败的) jsp
(后台对应提交 jsp 验证提交内容的) servlet (生成验证码的) servlet
XML 文档
四、验证码实现
1.所用软件为 Myeclipse
新建项目,默认生成 index.jsp 新建成功及失败 jsp(文件名自定义,但后台使用其路径时要对应即可)
注意:将 charset ,pageEncoding 设置为 utf-8 才能支持中文,否则乱码,此处采用 post 方法处理 Form 表单提交数据
2. jsp 代码写界面
提交界面jsp 代码及成功 jsp失败 jsp
三个界面的代码分别如下:
(1).提交页面主要代码:
(2).成功页面主要代码,验证码输入成功跳转的界面,提示登录成功或验证码输入正确
(3).失败页面主要代码
( 其中form 表单中 action=”index” 的 index 不是当前 index.jsp 文件,是对应新建的检测提交数据正误的 servlet 名字可自定义,下面截图所示:
此处是我的失误,不用这个名字,就不必多解释这一点,希望不会给各位带来不必要的麻烦
)
3. servlet 文件处理数据
新建 servlet 对应 img 的 src 路径来源属性值,此处命名为 ImageServlet (可自定义但要相互对应)
实现验证码的产生与显示
代码如下:
新建 action 对应的路径属性值 servlet 命名为 index 实现验证及相关处理
代码如下:
5.新建对应的 XML 文档,代码如下
所实现效果即本文开头所示。
不足之处请见谅及指教,谢谢览阅。
源码链接:https://gitee.com/niaonao/IdentifyCodeProject
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/159125.html原文链接:https://javaforall.cn