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

网友投稿 1089 2023-02-26

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:\Users\xiyang\Desktop\ValidateCode-1.0.jar

‘C:\Users\xiyang\Desktop\ValidateCode-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实现

注意:页面是layui框架渲染的,layui官网: https://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){

//参数列表:宽度,2220;度,字符数,⼲扰线数量

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、最终效果

点击验证码自动刷新

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:怎么在电脑上面打开小程序(如何在电脑中打开小程序)
下一篇:Windows下使用IDEA搭建Hadoop开发环境的详细方法
相关文章

 发表评论

暂时没有评论,来抢沙发吧~