java图形验证码实现

作者: 进击云原生 | 来源:发表于2018-08-25 12:04 被阅读1次

今天来学习下图形验证码的生成,首先依赖开源组件:

<dependency>
   <groupId>com.github.penggle</groupId>
   <artifactId>kaptcha</artifactId>
   <version>2.3.2</version>
</dependency>

在web.xml中配置名为Kaptcha的servlet:

<servlet>
 <!-- 生成图片的Servlet -->
 <servlet-name>Kaptcha</servlet-name>
 <servlet-class>com.google.code.kaptcha.servlet.KaptchaServlet</servlet-class>

 <!-- 是否有边框 -->
 <init-param>
   <param-name>kaptcha.border</param-name>
   <param-value>no</param-value>
 </init-param>
 <!-- 字体颜色 -->
 <init-param>
   <param-name>kaptcha.textproducer.font.color</param-name>
   <param-value>red</param-value>
 </init-param>
 <!-- 图片宽度 -->
 <init-param>
   <param-name>kaptcha.image.width</param-name>
   <param-value>135</param-value>
 </init-param>
 <!-- 使用哪些字符生成验证码 -->
 <init-param>
   <param-name>kaptcha.textproducer.char.string</param-name>
   <param-value>ACDEFHKPRSTWX345679</param-value>
 </init-param>
 <!-- 图片高度 -->
 <init-param>
   <param-name>kaptcha.image.height</param-name>
   <param-value>50</param-value>
 </init-param>
 <!-- 字体大小 -->
 <init-param>
   <param-name>kaptcha.textproducer.font.size</param-name>
   <param-value>43</param-value>
 </init-param>
 <!-- 干扰线的颜色 -->
 <init-param>
   <param-name>kaptcha.noise.color</param-name>
   <param-value>black</param-value>
 </init-param>
 <!-- 字符个数 -->
 <init-param>
   <param-name>kaptcha.textproducer.char.length</param-name>
   <param-value>4</param-value>
 </init-param>
 <!-- 使用哪些字体 -->
 <init-param>
   <param-name>kaptcha.textproducer.font.names</param-name>
   <param-value>Arial</param-value>
 </init-param>
</servlet>
<!-- 映射的url -->
<servlet-mapping>
 <servlet-name>Kaptcha</servlet-name>
 <url-pattern>/Kaptcha</url-pattern>
</servlet-mapping>

html中添加验证码标签,并绑定javascript事件:

<!--验证码-->
<li class="align-top">
 <div class="item-content">
   <div class="item-inner">
     <div class="item-title label">验证码</div>
     <input type="text" id="j_captcha" placeholder="验证码">
       <div class="item-input">
         <img id="captcha_img" alt="点击更换" title="点击更换" src="../Kaptcha"
                                        onclick="changeVerifyCode(this)"/>
       </div>
   </div>
 </div>
</li>
<script type="text/javascript">
       function changeVerifyCode(img) {
           // alert("asssssssssss");
           img.src = "../Kaptcha?" + Math.floor(Math.random() * 100);
       };
</script>

效果图:

image

最后,csdn资源,收集了海量学习资料,如果你准备入IT坑,励志成为优秀的程序猿,那么这些资源很适合你,包括java、go、python、springcloud、elk、嵌入式 、大数据、面试资料、前端等资源。同时我们组建了一个技术交流群,里面有很多大佬,会不定时分享技术文章,如果你想来一起学习提高,可以关注以下公众号后回复【2】,获取。


我是小碗汤,我们一起学习,扫码关注,精彩内容第一时间推给你

欢迎扫码关注

相关文章

  • 2018-09-04

    Java生成图形验证码与前端输入验证 在刷牛客时,遇到了关于web表单登陆中图形验证码实现的问题,所以试着将其编码...

  • SpringSecurity开发基于表单的认证(五)

    实现图形验证码功能 开发生产图形验证码接口 在认证流程中加入图形验证码校验 重构代码 开发生产图形验证码接口 根据...

  • spring security 使用篇 图形验证码的实现

    在很多登录功能中,需要用到图形验证码,所以简单的实现下面的图形验证码的功能 1.获取图形验证码 图形验证码的获取实...

  • java实现图形验证码

    首先img的src可以使用远程图片,也就是说他同样是可以请求后端的,这也就是实现图形验证码随机显示的原理。 配置h...

  • java图形验证码实现

    今天来学习下图形验证码的生成,首先依赖开源组件: 在web.xml中配置名为Kaptcha的servlet: ht...

  • Spring Boot 验证码生成与验证

    下面imagecode方法是一个生成图形验证码的请求,checkcode方法实现了对这个图形验证码的验证。从验证码...

  • Django-实现图形验证码、短信验证码功能(二)

    接上文:Django-实现图形验证码、短信验证码功能(一) 短信验证码后端发送实现 在settings中添加red...

  • Java实现字符验证码、运算验证码

    Java中很轻松可以实现验证码功能,在原生AWT图形化工具包中写一点简单的逻辑就能轻松完成验证码功能。本文,同时将...

  • 前后端分离情况下的图形验证码

    图形验证码包含两部分:图片和文字验证码。在JSP时代,图形验证码生成和验证是通过Session机制来实现的:后端生...

  • beego项目实战——短信验证码

    上一篇开发完成了图形验证码,这一篇来开发短信验证码功能短信验证码主要要实现两个功能一、接收图形验证码的id,用户填...

网友评论

    本文标题:java图形验证码实现

    本文链接:https://www.haomeiwen.com/subject/uxzwiftx.html