spring securtty学习 (三)图片验证码认证

图片验证码,在spring security 学习(二)用户认证自定义上添加。

具体步骤相对来说简单分为三步:生成图片验证码、显示给用户输入,登陆认证中加入校验验证码;

添加验证依赖

<!-- 验证码 --><dependency>  <groupId>org.springframework.social</groupId>  <artifactId>spring-social-config</artifactId></dependency>

定义图片对象ImageCode:属性有图片、验证码,过期时间

public class ImageCode {

    private BufferedImage img;

    private String code;

    private LocalDateTime exTime;

    public ImageCode(BufferedImage img, String code, int expireIn) {
        this.img= img;
        this.code = code;
        this.exTime= LocalDateTime.now().plusSeconds(expireIn);
    }

    public ImageCode(BufferedImage img, String code, LocalDateTime
      exTime) {
        this.img= img;
        this.code = code;
        this.exTime= exTime;
    }

生成验证码图片输出到客户端,并保存到session

原文地址:https://www.cnblogs.com/yuiqng/p/10587312.html

时间: 2024-10-12 08:49:50

spring securtty学习 (三)图片验证码认证的相关文章

Spring shiro学习(三)

接上,本来想继续写,结果一输入就chrome崩溃,我只能另开一个了 sessionListeners.sessionFactory配置 <!-- 会话监听器 --> <bean id="sessionListener" class="com.zheng.upms.client.shiro.listener.UpmsSessionListener"/> <!-- session工厂 --> <bean id="ses

Spring基础学习(三)&mdash;详解Bean(下)

一.Bean的生命周期 1.概述      Spring IOC容器可以管理Bean的生命周期,Spring 允许在Bean的生命周期的特定点执行定制的任务.      Spring IOC容器对Bean的生命周期进行管理的过程:      (1)通过构造器或工厂方法创建Bean实例.      (2)为Bean的属性设置值和对其他Bean的引用.      (3)调用Bean的初始化方法.      (4)Bean可以使用了.      (5)当容器关闭时,调用Bean的销毁方法.     

spring框架学习(三)——AOP( 面向切面编程)

AOP 即 Aspect Oriented Program 面向切面编程 首先,在面向切面编程的思想里面,把功能分为核心业务功能,和周边功能. 所谓的核心业务,比如登陆,增加数据,删除数据都叫核心业务 所谓的周边功能,比如性能统计,日志,事务管理等等 周边功能在Spring的面向切面编程AOP思想里,即被定义为切面 在面向切面编程AOP的思想里面,核心业务功能和切面功能分别独立进行开发 然后把切面功能和核心业务功能 "编织" 在一起,这就叫AOP 原理图 1. 功能分两大类,辅助功能和

基于spring mvc的图片验证码实现

基于spring mvc的图片验证码实现 标签: springmvcspring mvc验证码验证码验证 2016-01-28 10:49 8015人阅读 评论(4) 收藏 举报  分类: 表单处理 版权声明:本文为博主原创文章,未经博主允许不得转载. 本文实现基于spring mvc的图片验证码,分后台代码和前端页面的展现以及验证码的验证. 首看后台实现代码: @RequestMapping({"authCode"}) public void getAuthCode(HttpServ

spring框架学习(三)junit单元测试

spring框架学习(三)junit单元测试 单元测试不是头一次听说了,但只是听说从来没有用过.一个模块怎么测试呢,是不是得专门为一单元写一个测试程序,然后将测试单元代码拿过来测试? 我是这么想的.学到spring框架这才知道单元测试原来是这么回事儿. 下面以上一篇文章中set注入的第一个实例为测试对象.进行单元测试. 1,拷贝jar包 junit-3.8.2.jar(4.x主要增加注解应用) 2,写业务类 [java] view plaincopyprint? public class Use

ASP.NET图片验证码学习!

1. 新建一个Validate.aspx,然后在Validate.aspx.cs编写代码: using System;using System.Collections;using System.ComponentModel;using System.Data;using System.Web;using System.Drawing;using System.Web.SessionState;using System.Web.UI;using System.Web.UI.WebControls;

Spring Batch学习笔记三:JobRepository

此系列博客皆为学习Spring Batch时的一些笔记: Spring Batch Job在运行时有很多元数据,这些元数据一般会被保存在内存或者数据库中,由于Spring Batch在默认配置是使用HSQLDB,也就是说在Job的运行过程中,所有的元数据都被储存在内存中,在Job结束后会随着进程的结束自动消失:在这里我们推荐配置JobRepository去使用MySQL. 在这种情况下,Spring Batch在单次执行或者从一个执行到另外一个执行的时候会使用数据库去维护状态,Job执行的信息包

Spring Boot学习记录(三)--整合Mybatis

Spring Boot学习记录(三)–整合Mybatis 标签(空格分隔): spring-boot 控制器,视图解析器前面两篇都已弄好,这一篇学习持久层框架整合. 1.数据源配置 数据源使用druid,maven引入相关依赖,包括spring-jdbc依赖,mysql依赖 1.转换问题 配置的过程要学会为什么这样配置,而不是只学会了配置.这里我们可以和以前的配置方式对比: 以前版本 <!--配置数据库连接池Druid--> <bean id="dataSource"

ThinkPHP学习(五)图片验证码

今天用到图片验证码的功能,在网上找到ThinkPHP的下面代码: Public function verify(){ import('think.Image'); Image::buildImageVerify(); } 加入到Controller中,通过地址"http://localhost/index.php/passport/index/verify"来訪问,却提示下面错误: Class 'Passport\Controller\Image' not found 我的ThinkP