本文主要是介绍使用google.kaptcha来生成图片验证码,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1.导入依赖
<dependency><groupId>com.google.code</groupId><artifactId>kaptcha</artifactId><version>2.3.2</version></dependency>
图片展示如下,具体jar包自己下载
jar包下载完可以使用就很完美,如果导入之后报错不能使用,则手动添加jar,进入jar所在的位置,然后执行下面命令
mvn install:install-file -DgroupId=com.google.code -DartifactId=kaptcha -Dversion=0.0.9 -Dfile=kaptcha-0.0.9.jar -Dpackaging=jar -DgeneratePom=true
然后开始写代码:
需要一个类,可以定义到entity中,看你心情吧,你开心就好,图片如下
代码如下:
@Configuration
public class KaptchaConfig {@Beanpublic DefaultKaptcha producer() {Properties properties = new Properties();properties.put("kaptcha.border", "no");properties.put("kaptcha.textproducer.font.color", "black");properties.put("kaptcha.textproducer.char.space", "5");Config config = new Config(properties);DefaultKaptcha defaultKaptcha = new DefaultKaptcha();defaultKaptcha.setConfig(config);return defaultKaptcha;}
}
然后是controll代码,也很简单,直接上代码,如下:
//图片验证码@RequestMapping("/captcha.jpg")public void captcha(HttpServletResponse response)throws IOException {response.setHeader("Cache-Control", "no-store, no-cache");response.setContentType("image/jpeg");//生成文字验证码String text = producer.createText();producer.createText();//生成图片验证码BufferedImage image = producer.createImage(text);ServletOutputStream out = response.getOutputStream();ImageIO.write(image, "jpg", out);}
最后完成之后验证码是数字字母的组合,效果图如下所示:
这篇关于使用google.kaptcha来生成图片验证码的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!