使用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 {
 @Bean
 public 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来生成图片验证码的实现方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对呐喊教程网站的支持!

声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#nhooo.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。