验证码的原理、作用及实现「建议收藏」

验证码的原理、作用及实现「建议收藏」验证码能有效阻止恶意登录与注册,这里主要是验证码的相关原理及操作实现。所用知识为javaweb的jspservletxml及java基础知识。

大家好,又见面了,我是你们的朋友全栈君。

验证码原理分析及实现

一、前言

    最近学习实现了验证码,首先附图效果如下:(

    简单说明:

        分别提交正确、错误的验证码及对应效果 

        本文是图文结合说明)

    验证码的原理、作用及实现「建议收藏」      

    验证码的原理、作用及实现「建议收藏」

    验证码的原理、作用及实现「建议收藏」    

    验证码的原理、作用及实现「建议收藏」

二、验证码的作用

    验证码是目前大多网站所支持并使用于注册登录的。就在于其作用能有效防止恶意登录注册,验证码每次都不同,

这就可以排除,用其他病毒或者软件自动申请用户及自动登陆.有效防止这种问题。


三、原理及知识点分析

    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.net/159125.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 计算机cpu后面字母代表什么意思,CPU后缀含义是什么意思 AMD/intel处理器后缀字母代表什么涵义…[通俗易懂]

    计算机cpu后面字母代表什么意思,CPU后缀含义是什么意思 AMD/intel处理器后缀字母代表什么涵义…[通俗易懂]CPU分为intel与AMD两大品牌(平台),两者不但型号众多,而且型号后缀命名也非常之多,那么AMD/intel处理器后缀字母代表什么涵义?下面装机之家帮助广大电脑爱好者科普一下。CPU后缀往往会让用户困惑不已,如果您不查阅资料的话,你就不会知道i7-6820HK与i7-6820HQ的区别什么,也不知道i5-4200M与i5-4200U的性能差距有多大!因此,关于CPU后缀字母的科普是有必要的。…

    2022年5月22日
    48
  • Java Swing 图形界面开发简介

    Java Swing 图形界面开发简介JavaSwingGUI 图形界面窗口开发基础教程 本教程将系统性地详细介绍 Swing 开发中常用的一些组件 布局管理器等相关知识技术 并且每章节都将通过代码实例展示实际应用 Swing 是 Java 为图形界面应用开发提供的一组工具包 是 Java 基础类的一部分 Swing 包含了构建图形界面 GUI 的各种组件 如 窗口 标签 按钮 文本框等 Swing 提供了许多比 AWT 更好的屏幕显示元素 使用纯 Java 实现 能够更好的兼容跨平台运行 JavaSwing 图形界面开发目录

    2025年10月16日
    2
  • 基于树莓派的语音识别和语音合成

    基于树莓派的语音识别和语音合成基于树莓派的语音识别和语音合成摘要语音识别技术即AutomaticSpeechRecognition(简称ASR),是指将人说话的语音信号转换为可被计算机程序所识别的信息,从而识别说话人的语音指令及文字内容的技术。目前语音识别被广泛的应用于客服质检,导航,智能家居等领域。树莓派自问世以来,受众多计算机发烧友和创客的追捧,曾经一“派”难求。别看其外表“娇小”,内“心”却很强大,视频、音频等功…

    2022年6月26日
    55
  • golang map 有序_有序化最重要的手法是

    golang map 有序_有序化最重要的手法是要使得Map有序化,我们必须要对map的key进行排序,我们可以使用sort.Strings函数对字符串进行排序。packagemainimport( "fmt" "sort")funcmain(){ slice1:=map[string]int{ "wangxiaoming":12, "liming":11, "fenglingling"…

    2025年12月9日
    3
  • linux更新文件名时间,Linux文件的时间及修改命令touch-linux修改文件名

    linux更新文件名时间,Linux文件的时间及修改命令touch-linux修改文件名Linux 文件的时间及修改命令 touchLinux 系统中的文件主要有三个时间参数 他们分别是修改时间 modification mtime 状态时间 statustime ctime 访问时间 accesstime atime 具体含义如下 修改时间 modification mtime 主要指的是文件的内容发生改变时 这个修改时间会发生变化 而文件的权限和属性变化

    2025年8月21日
    7
  • Window基础(黑客基础)

    Window基础(黑客基础)一、Window重要目录1.ProgramData:C:\ProgramData是个公用的被创建文件夹或文件存放的地方,这些文件夹或文件仅由创建者完整控制。programdata是电脑C盘的一个系统文件夹2.ProgramFiles和ProgramFiles(86):程序软件默认安装目录,它们的区别是前者是安装64位软件,后者是安装32位软件3.Window:系统安装目录4….

    2022年5月2日
    40

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号