一聚教程网:一个值得你收藏的教程网站

最新下载

热门教程

Idea中maven项目实现登录验证码功能代码示例

时间:2020-12-29 编辑:袖梨 来源:一聚教程网

本篇文章小编给大家分享一下Idea中maven项目实现登录验证码功能代码示例,文章代码介绍的很详细,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看。

1、配置maven环境变量,将maven安装的bin⽬录添加到path路径中(此电脑->属性->高级系统设置->环境变量->)

路径为maven安装目录

2、找到ValidateCode.jar包的本地路径

3、制作Jar包

原jar包地址:链接:https://pan.baidu.com/s/1QpqiZaF_ZYhW1Qn3ifn2eg提取码: uc47

无法直接使用,需要命令行制作,命令如下:

mvn install:install-file -DgroupId=it.source 
-DartifactId=ValidateCode -Dversion=1.0 
-Dpackaging=jar -Dfile=C:UsersxiyangDesktopValidateCode-1.0.jar

‘C:UsersxiyangDesktopValidateCode-1.0.jar'为jar包路径

4、成功效果

5、在maven项目的pom.xml文件中添加依赖


cn.dsna.util.images
ValidateCode
1.0

注意:‘cn.dsna.util.images'为依赖的路径,笔者是将jar包放在本地maven仓库的cn/dsna/util/images路径下

6、前端html实现




 
 后台登录
 
 
 
 
 
 
 
 css/layui.css" rel="external nofollow" media="all" />
 


 

注意:页面是layui框架渲染的,layui官网:https://www.layui.com/

也可以在网盘中下载:链接:https://pan.baidu.com/s/1QpqiZaF_ZYhW1Qn3ifn2eg提取码: uc47

7、前端js代码(login.js)

//点击验证码进⾏刷新验证码,(登陆失败以后,重新调⽤该⽅法去刷新验证码)
function changeCode(){
 var img = document.getElementById("codeImg");
 //注意:如果请求⽹址完全相同 则浏览器不会帮你刷新
 //可以拼接当前时间 让每次请求的⽹址都不⼀样
 img.src ="http://localhost:8080/home/code?time="+new Date().getTime();
 }

8、后端java代码(控制层)

//获取验证码
 @GetMapping("code")
 public void getCode(HttpServletRequest request, HttpServletResponse response){
//参数列表:宽度,⾼度,字符数,⼲扰线数量
 ValidateCode vs = new ValidateCode(120,40,5,100);
 //获取文本
 //String code = vs.getCode();
 //将文本放入session中,一个公共的存储空间,存值的方式是key-value
 try {
 request.getSession().setAttribute("code",vs.getCode());
 request.getSession().setMaxInactiveInterval(300);//永不过期为-1
 vs.write(response.getOutputStream());
 } catch (IOException e) {//有io流就可能有io流异常,就要加try catch语句
 e.printStackTrace();
 }
 }

9、最终效果

点击验证码自动刷新

热门栏目