栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java中session存储Users对象实现记住密码

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java中session存储Users对象实现记住密码

之前做过cookie实现记住密码,这次换成session记住密码又做了一遍,有很多收获。
本次博客分为两部分。一部分是cookie和session的区别(面试经常被问道);另一部分是sesion实现记住密码,在Jsp页面和Controller页面的代码编写。

一、cookie和session区别

区别:

1.cookie是浏览器端技术;将数据保存到浏览器中,不安全不可以保存中文保存时编码: URLEncoder.encode();取值时解码:URLDecoder.decode();。
2.session是服务器端技术;将数据保存到服务器中,当访问servlet时,服务器创建session对象同时会向浏览器写入一个sessionId保存到cookie中,当浏览器关闭,session里面的数据没有删除,而是保存sessionId的cookie丢失因此找不到数据,安全

相同:
两者作用范围都是一次会话(浏览器开启到关闭)有效。

二、session实现记住密码

分为3步。
1.jsp页面布局

默认rem选择框是选中状态



2.controller层逻辑处理
我的代码有两处用到session,这里只看第二处即可。
//2.登录按钮按下后 当rem被选中,且密码正确时,将账号密码这个对象存入session

//5.1登录
@RequestMapping("login")
public String login(String uPhone,String uPwd,String rem,Model model,HttpServletResponse response,HttpServletRequest request){
	HttpSession session = request.getSession();
	String flag = "1";
	String uId = us.selectUsersByPhone_PwdService(uPhone, uPwd);
	//判断如果账号密码不存在 返回登录页面;存在,跳转到首页
	if(uId==null){
		flag="密码错误";
			request.setAttribute("flag", flag);
			return "register";
	}else{
		Users u1 = us.selectUsersByIdService(uId);
		//1.只要登录成功 就将users对象存入session中,为之后的过滤器使用
		session.setAttribute("handlerInterceptorSession", u1);
		
		//2.登录按钮按下后 当rem被选中,且密码正确时,将账号密码存入session
		if(rem.equals("on")){
			Users u2 = new Users(uPhone,uPwd);
			session.setAttribute("remSession", u2);
		}
		return "index";
	}
	
}

3.jsp页面补充
这里主要看//5.当光标离开后调用记住密码的功能
逻辑是:用户输入账号光标离开后,从session中取值,如果账号在session中存在,则获取账号对应的密码,将密码赋值给输入框。(前提是:rem选择框是选中状态,在1.jsp页面布局里面就设置好了)



至此,session存储Users对象实现记住密码功能完毕,更多相关Java session记住密码内容请搜索考高分网以前的文章或继续浏览下面的相关文章希望大家以后多多支持考高分网!

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/129425.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号