温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Java怎么实现图形验证码

发布时间:2021-08-20 12:46:42 来源:亿速云 阅读:379 作者:chen 栏目:开发技术

这篇文章主要讲解了“Java怎么实现图形验证码”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Java怎么实现图形验证码”吧!

简介

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

效果展示(部分验证码闪动,截图无法展示)

Java怎么实现图形验证码

导入方式

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怎么实现图形验证码这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI