在做java web网站开发时,为了避免每次登录都需要输入用户名和密码,我们会使用Cookie技术来实现记住密码功能,在这里小编使用简单的项目案例来教大家具体的实现过程。
前期准备
1、下载好jquery,在这里我们采用3.5.1版本的jquery.min.js。jquery官网下载地址:点击直达
2、下载好jquery.cookie.js,在这里我们采用1.4.1版本(注意下载后是压缩包,解压后我们只要里面的jquery.cookie.js即可)。官方下载地址:点击直达
记住密码功能实现
1、在Eclipse中新建名为demo的java web项目。
2、在WebContent目录下新建js目录,将jquery.min.js和jquery.cookie.js拷贝进去。
3、在WebContent目录下新建login.jsp(注意要先引入jquery.min.js,再引入jquery.cookie.js),具体内容如下:
pageEncoding="UTF-8"%>
登录页面$(function(){
getCookie();
})
//设置Cookie方法function setCookie(){
var username = $('#username').val();
var password = $('#password').val();
//获取记住密码是否选中 var flag = $("#remember").is(":checked");
if(flag){//如果选中-->记住密码登录 //cookie有效时间7天,也可以设置为永久,把时间去掉就行 $.cookie("remember","true",{expires:7});
$.cookie("username",username.trim(),{ expires: 7 });
$.cookie("password",password.trim(),{ expires: 7 });
}else{//如果没选中-->不记住密码登录 //设置cookie有效时间-1,直接将浏览器端原先保存的cookie失效 $.cookie("remember","false",{expires:-1});
$.cookie("password", "",{expires:-1});
$.cookie("username", "",{expires:-1});
}
}
//获取cookie方法,自动填充用户名和密码function getCookie(){
var remember = $.cookie("remember");
//获取cookie中的用户名 var username = $.cookie("username");
//获取cookie中的登陆密码 var password = $.cookie("password");
//记住密码为true的话把“记住用户名和密码”复选框勾选住 if(remember){
$("#remember").attr("checked","true");
}
//用户名存在的话把用户名填充到用户名文本框 if(username!=""){
$("#username").val(username);
}else{
$("#username").val("");
}
if(password!=""){//密码存在的话把密码填充到密码文本框 $("#password").val(password);
}else{
$("#password").val("");
}
}
//登录按钮点击时间function login(){
//调用setCookie()方法 setCookie();
//发送登陆请求,在此省略}
用户名:
密码:
记住用户名和密码?
登 录
效果图
部署项目,访问login.jsp,发现只要如图效果点击登录后,再次访问登录页,发现用户名和密码已经记住密码选项都正常显示,如果去掉记住用户名密码选项,点击登录,然后再次访问首页就发现,用户名和密码都不会自动填充了。
总结
以上就是利用Cookie来实现简单的记住用户名和密码功能,有兴趣的同学也可在测试时查看下浏览器的cookie信息,会对此有更深刻的体会。