session问题

来源:9-2 加入购物车功能开发1

jojohao

2018-05-20

老师我始终对这句话不解

User user =(User) session.getAttribute(Const.CURRENT_USER);

老师为什么这个当前用户要设置常量啊,如果每个用户名字不同,存进session中也不同,那么要是取出来不都是currentUser吗?

public static  final String CURRENT_USER = "currentUser";


写回答

2回答

Geely

2018-05-31

你好,同学,这个就是session里的 一个key,不同的user agent请求进来也都是不同的session。这里的CURRENT_USER是相同的常量。然后我仔细看了星辰同学的回答,很正确,同学我建议先学习一下session cookie的原理,这样的话,就非常容易理解了。

0
0

星辰Iron

2018-05-20

Const.CURRENT_USER这个常量代表的是Key,这个Key指向的Value,Key本身的名称是不会变化的,变化的是Value这个值(Value这个值里面存储的就是用户的信息)。这个

session.getAttribute(Const.CURRENT_USER)

方法跟前面的

session.setAttribute(Const.CURRENT_USER,response.getData());

方法是对应起来的。

ServerResponse<User> response = iUserService.login(username,password);
if(response.isSuccess()){
    session.setAttribute(Const.CURRENT_USER,response.getData());
}
return response;


0
0

从0开始 独立完成企业级Java电商网站服务端开发

前后端分离,数据库接口设计,架构设计,功能开发,上线运维

9476 学习 · 8804 问题

查看课程