GIT项目

【开源】开源验证码,Java图形验证码,支持gif、中文、算术等类型,可用于Java Web、JavaSE等项目

1.简介Java图形验证码,支持gif、中文、算术等类型,可用于JavaWeb、JavaSE等项目2.效果展示3.导入项目maven:<dependencies>   <dependency>      <groupId>com.github.whvcse</grou

1.简介

Java图形验证码,支持gif、中文、算术等类型,可用于Java Web、JavaSE等项目

2.效果展示

00cb25c876d3d782e3e2233570cdf268.png

3.导入项目

maven:

<dependencies>
   <dependency>
      <groupId>com.github.whvcse</groupId>
      <artifactId>easy-captcha</artifactId>
      <version>1.6.2</version>
   </dependency>
</dependencies>


使用方法

4.1.在SpringMVC中使用

@Controller
public class CaptchaController {
    
    @RequestMapping("/captcha")
    public void captcha(HttpServletRequest request, HttpServletResponse response) throws Exception {
        CaptchaUtil.out(request, response);
    }
}

前端html代码:

<img src="/captcha" width="130px" height="48px" />

不要忘了把/captcha路径排除登录拦截,比如shiro的拦截。

4.2.在servlet中使用

web.xml中配置servlet:

<web-app>
    <!-- 图形验证码servlet -->
    <servlet>
        <servlet-name>CaptchaServlet</servlet-name>
        <servlet-class>com.wf.captcha.servlet.CaptchaServlet</servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>CaptchaServlet</servlet-name>
        <url-pattern>/captcha</url-pattern>
    </servlet-mapping>
</web-app>

前端html代码:

<img src="/captcha" width="130px" height="48px" />

4.3.判断验证码是否正确

@Controller
public class LoginController {
    
    @PostMapping("/login")
    public JsonResult login(String username,String password,String verCode){
        if (!CaptchaUtil.ver(verCode, request)) {
            CaptchaUtil.clear(request);  // 清除session中的验证码
            return JsonResult.error("验证码不正确");
        }
    }   
}

4.4.设置宽高和位数

@Controller
public class CaptchaController {
    
    @RequestMapping("/captcha")
    public void captcha(HttpServletRequest request, HttpServletResponse response) throws Exception {
        // 设置位数
        CaptchaUtil.out(5, request, response);
        // 设置宽、高、位数
        CaptchaUtil.out(130, 48, 5, request, response);
        
        // 使用gif验证码
        GifCaptcha gifCaptcha = new GifCaptcha(130,48,4);
        CaptchaUtil.out(gifCaptcha, request, response);
    }
}

4.5.不使用工具类

 CaptchaUtil封装了输出验证码、存sess

原创不易,完成人机校验,阅读全文

相关推荐