这篇文章主要讲解了“Java怎么实现图形验证码”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Java怎么实现图形验证码”吧!
简介
Java图形验证码,支持gif、中文、算术等类型,可用于Java Web、JavaSE等项目。
效果展示(部分验证码闪动,截图无法展示)

导入方式
1、 maven
<dependencies>
<dependency>
<groupId>com.github.whvcse</groupId>
<artifactId>easy-captcha</artifactId>
<version>1.6.2</version>
</dependency>
</dependencies>
2、 gradle
dependencies {
compile 'com.github.whvcse:easy-captcha:1.6.2'
}
jar包
下载地址 EasyCaptcha.jar
在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路径排除登录拦截。
有些同学可能需要在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" />
比较验证码
@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("验证码不正确");
}
}
设置宽高和位数
@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);
}
}
感谢各位的阅读,以上就是“Java怎么实现图形验证码”的内容了,经过本文的学习后,相信大家对Java怎么实现图形验证码这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是天达云,小编将为大家推送更多相关知识点的文章,欢迎关注!