Java会话技术Session如何使用
发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,本篇内容介绍了"Java会话技术Session如何使用"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
千家信息网最后更新 2026年11月01日Java会话技术Session如何使用Session如何工作
结合代码理解Session
本篇内容介绍了"Java会话技术Session如何使用"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
什么是Session
Session技术是将信息保存在服务端,而客户端需要接收、记录和回送Session的ID,所以Session通常情况下是借助Cookie技术来传递ID给服务端的,服务端拿到session id之后查询内存中对应的记录。
一个客户端对应一个Session,而一个Session有多个Attribute,每一个Attribute有唯一的name。
编写代码证明提出的观点:
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { HttpSession session = req.getSession(); PrintWriter writer = resp.getWriter(); // 给session绑定一个user对象 session.setAttribute("user", new User(1, "kongsam")); List users = new ArrayList<>(); users.add("kongsam"); users.add("xiaoming"); users.add("xiaohong"); // 给session绑定一个list数组 session.setAttribute("list", users); // 最后打印输出 writer.println("JSESSIONID = " + session.getId()); writer.println("object => user = " + session.getAttribute("user").toString()); for (String user : users) { writer.println("list => user = " + user); }} 两个不同的浏览器就是两个不同的客户端,这两个客户端对应不同的JSESSIONID。
Session如何工作
在现实生活中,当你去理发店理发时,你可以选择在前台办理一张会员卡,前台工作人员将你的基本信息和之后的消费信息等都存储到店家电脑的硬盘上,在以后消费的时候你仅凭一张会员卡就可以查询到你所有的信息和消费记录。注意,这里的你是指客户端,前台(店家)指的是服务端。
结合代码理解Session
SessionDemo01是用来创建一个假的数据库,并且把这个数据库存放到Session中进行保管。
@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { HttpSession session = req.getSession(); // 创建一个假数据库 Map vipUsers = new HashMap<>(); vipUsers.put("kongsam", new VipUser(1, "kongsam", "123", 50)); vipUsers.put("xiaoming", new VipUser(2, "xiaoming", "123", 100)); vipUsers.put("xiaohong", new VipUser(3, "xiaohong", "123", 200)); // 将假数据库的数据存放到Session中 session.setAttribute("vipUsers", vipUsers);} 然后SessionDemo02用于访问Session里vipsUsers数据库,如果用户没有办理或者不存在该用户则为其注册一个新VIP。
@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { req.setCharacterEncoding("utf-8"); resp.setCharacterEncoding("utf-8"); resp.setContentType("text/html;charset=utf-8"); HttpSession session = req.getSession(); // 获取username String username = req.getParameter("username"); // 从Session中取出数据库 Map maps = (Map) session.getAttribute("vipUsers"); // 判断数据库中是否有和username匹配的用户 if (maps.get(username) != null && maps.get(username).getUsername().equals(username)) { resp.getWriter().println(maps.get(username).getUsername() + "您好,您目前的积分是: " + maps.get(username).getPoints()); } else { resp.getWriter().println("您还没有办理会员卡,前台正在为您办理中...,请刷新页面。"); maps.put(username, new VipUser(1, username, "123", 50)); session.setAttribute("vipUsers", maps); }} "Java会话技术Session如何使用"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!
数据
数据库
客户
客户端
技术
信息
前台
服务
不同
两个
会员
会员卡
用户
消费
代码
内容
店家
情况
更多
知识
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
深圳九邦互联网科技有限公司
互联网电商科技
互联网和科技创新
北京互联网科技
上海挚品互联网科技
互联网科技英文
世界互联网领先科技成果
润盈互联网科技
互联网金融和金融科技
卓越科技互联网 招聘
深圳市运趣互联网科技有限公司
新华互联网科技2019
互联网公司科技股
互联网保险科技创业
互联网科技人工智能实验室
内蒙古九一互联网科技
互联网科技如何创业
科技互联网的核心竞争力
富国互联网科技002692
互联网企业和网络科技有限公司
保险科技 互联网保险
新华互联网科技学校
互联网科技活动banner
重庆互联网络科技
顺玮阁互联网科技
广州紫鲸互联网科技
四个字互联网科技公司取名
创业天下互联网科技有限公司
顶级互联网科技成果有哪些
武汉亿视互联网科技有限公司