java验证码画布类型,【Java工具类】使用Kaptcha生成验证码写回页面中
1. 导入依赖
导入kaptcha依赖:
com.github.penggle
kaptcha
2.3.2
2. 编写配置类:
@Configuration
public class KaptchaConfig {
@Bean
public Producer kaptchaProducer() {Properties properties = new Properties();
properties.setProperty("kaptcha.image.width","100");
properties.setProperty("kaptcha.image.height","40");
properties.setProperty("kaptcha.textproducer.font.size","32");
properties.setProperty("kaptcha.textproducer.font.color","0,0,0");
properties.setProperty("kaptcha.textproducer.char.string","0123456789ABCDEFGHIJKLMOPQRSTUVWXYZ");
properties.setProperty("kaptcha.textproducer.char.length","4"); // 验证码长度
properties.setProperty("kaptcha.noise.impl","com.google.code.kaptcha.impl.NoNoise");
DefaultKaptcha kaptcha = new DefaultKaptcha();
Config config = new Config(properties);
kaptcha.setConfig(config);
return kaptcha;
}
}
3. 编写 Controller 将验证码存入 session 并以图片的形式传回前端
/**
* 生成验证码并返回
*
* @param response
* @param session
*/
@GetMapping("/kaptcha")
public void getKaptchaImage(HttpServletResponse response, HttpSession session) {
String text = producer.createText();
BufferedImage image = producer.createImage(text);
// 将验证码存到session中
session.setAttribute("kaptcha", text);
// 将图片返回给浏览器
response.setContentType("image/png");
try {
OutputStream os = response.getOutputStream();
// 利用写出图片的工具类
ImageIO.write(image, "png", os);
} catch (IOException e) {
logger.error(e.getMessage());
}
}
java验证码画布类型,【Java工具类】使用Kaptcha生成验证码写回页面中相关推荐
- Java Web学习总结(22)——使用kaptcha生成验证码
kaptcha是一个简单好用的验证码生成工具,通过配置,可以自己定义验证码大小.颜色.显示的字符等等.下面就来讲一下如何使用kaptcha生成验证码以及在服务器端取出验证码进行校验. 一.搭建测试环境 ...
- java inputtools_Java后台开发常用工具类
本文涉及的工具类部分是自己编写,另一部分是在项目里收集的.工具类涉及数据库连接.格式转换.文件操作.发送邮件等等.提高开发效率,欢迎收藏与转载. 数据库连接工具类 数据库连接工具类--仅仅获得连接对象 ...
- java 兼容excel_Java解析Excel工具类(兼容xls和xlsx)
依赖jar org.apache.poi poi-ooxml 4.0.1 ExcelUtils.java package javax.utils; import java.io.File; impor ...
- 【java笔记】Collections集合工具类
java.utils.Collections是集合工具类,用来对集合进行操作 常用方法: public static<T>boolean addAll(Collection<T> ...
- (转)JAVA 十六个常用工具类
(转)JAVA 十六个常用工具类 一. org.apache.commons.io.IOUtils closeQuietly 关闭一个IO流.socket.或者selector且不抛出异常.通常放在f ...
- java获取视频第一帧工具类
java获取视频文件第一帧,为了防止黑画面,此例取第五帧,本例子采用maven形式,可以获取视频的文件大小. 1. pom.xml 添加引用jar包 jdk采用1.8,日志自行添加即可,这里使用的是l ...
- JAVA 文件上传下载工具类
JAVA 文件上传下载工具类 import lombok.extern.slf4j.Slf4j; import org.apache.commons.io.FileUtils; import org. ...
- Java版CRC8和CRC16工具类
搞物联应用,通信时常用CRC校验.下面是Java版的CRC算法工具类,可直接使用. CRC8工具类 public class CRC8Util {static byte[] crc8_tab = {( ...
- java企业微信消息发送工具类
java企业微信消息发送工具类 用途 基于java实现调用企业微信发送消息,文件,图片. 实现效果 文件列表 文件名 用途 WechatUtil.java 企业微信工具类 WechatTest.jav ...
- JAVA实现 PDF转换 常用工具类(html转PDF、PDF添加页码、PDF文件下载、PDF添加印章或者水印)
JAVA实现 PDF转换 常用工具类(html转PDF.PDF添加页码.PDF文件下载.PDF添加印章或者水印)可直接使用 package com.bestvike.util; import com. ...
最新文章
- Linux磁盘阵列技术详解(二)--raid 1创建
- fsb,fev文件格式转换,提取与打包
- python 实现点击右键用某个程序打开功能_工欲善其事,必先利其器(1)——Python开发环境安装与配置...
- php怎么去除内容,php怎么把html标签去除?
- n阶方阵的蛇形排列java_「P·R·N·D」的排列顺序为何成为行业标准,能不能改变呢?...
- linux jvm启动过程,Linux操作系统启动过程详解
- 原生 JavaScript 实现扫雷
- 也许你需要在 Antergos 与 Arch Linux 中查看印度语和梵文?
- 键盘 计算机代码,键盘钩子示例
- HAWQ取代传统数仓实践(一)——为什么选择HAWQ
- 【python】python语法糖
- python三重积分_(整理)三重积分及其计算和多重积分.
- workman+thinkPHP 即时通讯
- 常用的的身份证校验方法
- Jenkins+Newman+Postman生成接口自动化测试报告
- Excel如何打开两个独立窗口
- 千兆网卡和普通网卡有什么区别?如何判断?
- echarts地图自定义,上海市崇明区陆地地图
- unity3d布娃娃2
- VMP学习笔记之反汇编引擎学习(三)