Java生成验证码合集(二)GIF版,Java生成动图验证码

soゝso 2019-01-08 16:56:39 31693

Java生成验证码合集(一)简单版

Java生成验证码合集(二)GIF版

相对来说呢,jpg格式的相对来说容易破解一点,当然也取决于你的干扰元素,元素越复杂,破解也就难度越高,有的加的多,人都识别不出来了,何况人呢。都是概率问题。

GIF格式 + 干扰元素,那么就 验证码  破解难度又上了一个层次。

上代码吧。

/**
 * 获取验证码(Gif版本)
 * @param response
 */
@RequestMapping(value="getGifCode",method=RequestMethod.GET)
public void getGifCode(HttpServletResponse response,HttpServletRequest request){
	try {
		response.setHeader("Pragma", "No-cache");  
        response.setHeader("Cache-Control", "no-cache");  
        response.setDateHeader("Expires", 0);  
        response.setContentType("image/gif");  
        /**
         * gif格式动画验证码
         * 宽,高,位数。
         */
        Captcha captcha = new GifCaptcha(146,33,4);
        //输出
        captcha.out(response.getOutputStream());
        HttpSession session = request.getSession(true);  
        //存入Session
        session.setAttribute("_code",captcha.text().toLowerCase());  
	} catch (Exception e) {
		LoggerUtils.fmtError(getClass(),e, "获取验证码异常:%s",e.getMessage());
	}
}

使用挺简单的,但是用了其他人封装的工具类。下面会提供下载链接的。

这些个工具类,还提供了这个气泡版本的jpg格式 验证码  方式。

代码如下:

/**
 * 获取验证码(jpg版本)
 * @param response
 */
@RequestMapping(value="getJPGCode",method=RequestMethod.GET)
public void getJPGCode(HttpServletResponse response,HttpServletRequest request){
	try {
		response.setHeader("Pragma", "No-cache");  
		response.setHeader("Cache-Control", "no-cache");  
		response.setDateHeader("Expires", 0);  
		response.setContentType("image/jpg");  
		/**
		 * jgp格式验证码
		 * 宽,高,位数。
		 */
		Captcha captcha = new SpecCaptcha(146,33,4);
		//输出
		captcha.out(response.getOutputStream());
		HttpSession session = request.getSession(true);  
		//存入Session
		session.setAttribute("_code",captcha.text().toLowerCase());  
	} catch (Exception e) {
		LoggerUtils.fmtError(getClass(),e, "获取验证码异常:%s",e.getMessage());
	}
}

有兴趣的同学可以下载源码看看。


版权所属:SO JSON在线解析

原文地址:https://www.sojson.com/blog/71.html

转载时必须以链接形式注明原始出处及本声明。


附件下载:

备注:点击文件名下载,附件源来自云端,只能在本站下载。复制下载链接无效。

本文主题:

如果本文对你有帮助,那么请你赞助我,让我更有激情的写下去,帮助更多的人。

相关文章
Java生成验证码合集(一)简单
MyEclipse8.5 注册生成 Java代码实现方式。永久免费
Javascript 生成UUID,Java生成UUID
微信支付功能--PC端生成二维码,实现扫描支付功能
Java 解析二维码,google.ZXing 讲解
Java 信任所有SSL书,HTTPS请求抛错,忽略书请求完美解决
Java 完美解析.plist & 生成plist ,Android 解析.plist
Elasticsearch 启 Likely root cause: java.nio.file.AccessDeniedException
Ehcache项目启完毕报错java.net.SocketTimeoutException: connect timed out
使用zxing解析二维码抛出com.google.zxing.NotFoundException 解决方案
最新文章
iOS版淘宝打开提示“您使用的程序是内测版本,将于2020-03-28到期,到期将无法使用,请尽快下载最新版本” 842
关于一位“caoz的梦呓”的大佬在微信公众号喷我的整体回复 57942
DNS TXT记录添加方法,ICP备案信息屏蔽查询处理方案讲解 2819
SEO优化的最佳时间段即将来临,春节最佳SEO优化讲解 2295
SEO实战分析-排名最近突然掉光了问题排查,几个大站关键词下降SEO问题分析 2271
Java模拟WSS websocket ssl请求,Java WSS模拟请求代码示例 4941
Springboot 集成 Ehcache 代码讲解 5725
阿里云 RDS Specified key was too long; max key length is 767 bytes 解决方案 2158
Springboot HTTP Get/Post 请求讲解,Springboot几行代码完成Http请求 6070
天气免费API接口,天气API接口请求讲解及源码下载 28737
最热文章
我为什么要选择RabbitMQ ,RabbitMQ简介,各种MQ选型对比 369512
苹果电脑Mac怎么恢复出厂系统?苹果系统怎么重装系统? 342483
免费天气API,全国天气 JSON API接口,可以获取五天的天气预报 307386
免费天气API,天气JSON API,不限次数获取十五天的天气预报 215423
最新MyEclipse8.5注册码,有效期到2020年 (已经更新) 206954
Elasticsearch教程(四) elasticsearch head 插件安装和使用 181496
Jackson 时间格式化,时间注解 @JsonFormat 用法、时差问题说明 113815
Elasticsearch教程(一),全程直播(小白级别) 101338
谈谈斐讯路由器劫持,你用斐讯路由器,你需要知道的事情 100517
Elasticsearch教程(六) elasticsearch Client创建 90290

骚码加入我们 / 千人QQ群:259217951

入群需要5元为的是没有垃圾广告,如果没有QQ钱包,可以加群主拉进。

二维码生成 来自 >> 二维码生成器

支付扫码

所有赞助/开支都讲公开明细,用于网站维护:赞助名单查看

查看我的收藏

正在加载... ...