你听说过Session吗?
它是保存在服务器的一个标识,就想客户电脑上的Cookie。我们常见的网站管理员和普通用户之间就是用Session来区分的。
你所说的HttpSession是JSP中经常使用的一个方法,准确的说,是Request中的一个方法,比如。
Session = request.getSession(true);
用于获取Session
HttpSession 中可以跟踪并储存用户信息,把值设置到属性中,有2 个方法:
setAttribute(),getAttrribute();
例如:在一个方法中用session.setAttribute(“student”,student);在
session 中设置一个属性名为student,值为一个名为student 的对象。而后可在
同一session 范围内用getAttribute(“student”)取出该属性,得到student
对象。
HttpSession session=request.getSession();为什么不用response儿用request!
首先回答为什么分别是response和request这两个内置对象。
你得先明白你通过获取对象是做什么用的,是往哪用的。
第一个PrintWriter out=response.getWriter()
是想获得一个输出流,用来响应客户端发出的请求。所以想响应客户端必须用response
第二个HttpSession session=request.getSession()
是从客户端获得一个session的对象,这个对象包含客户端持有的相关信息用来区别每个客户端.既然是从客户端就必须用请求对象来获取,因为一般都是客户端向服务器端发出的一个请求.所以用request对象。
Cookie和session这个得分开来说
两个都可以用来存私密的东西,同样也都有有效期的说法。
区别在于。
session是放在服务器上的,过期与否取决于服务期的设定,cookie是存在客户端的,过去与否可以在cookie生成的时候设置进去。
1、cookie数据存放在客户的浏览器上,
session数据放在服务器上
2、cookie不是很安全,别人可以分析存放在本地的COOKIE并进行COOKIE欺骗
考虑到安全应当使用session
3、session会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能
考虑到减轻服务器性能方面,应当使用COOKIE
4、单个cookie在客户端的限制是3K,就是说一个站点在客户端存放的COOKIE不能3K。
5、所以个人建议:
将登陆信息等重要信息存放为SESSION
其他信息如果需要保留,可以放在COOKIE中
分享到:
相关推荐
在本文中,我们将深入探讨如何使用Java编程语言和HttpSession接口来实现一个简单的验证码登录系统。验证码(CAPTCHA)是一种防止恶意机器人或自动化程序非法访问网站的安全机制,它要求用户输入图片上显示的一组随机...
JDBC(Java Database Connectivity)是Java访问数据库的标准API,通过一系列接口和类实现数据库连接、查询、操作等功能。开发者通常不会直接实例化这些类,而是通过`DriverManager.getConnection()`获取数据库连接,...
3. **session共享与复制**:在集群环境中,如何实现session的共享,以确保用户在不同服务器之间切换时仍能保持会话状态。这可能涉及到session复制或使用外部存储(如数据库或内存缓存)。 4. **session的优化**:...
通过使用 HttpSession,我们可以实现 Ajax 请求重定向,解决了 Ajax 请求不能实现网页重定向的问题。这种方法可以应用于各种场景,例如在表单提交后重定向到新的页面,或者在 Ajax 请求成功后重定向到新的页面。 ...
要在Spring WebSocket中获取HttpSession,我们通常会使用STOMP(Simple Text Oriented Messaging Protocol)作为WebSocket的消息协议,因为它易于理解和实现,并且Spring提供了很好的支持。以下是一步步实现的步骤:...
首先,需要实现用户登录功能,并在登录成功后将用户信息存储到`HttpSession`中。例如: ```java if (Objects.equals(userDetail.getUserDetailPassword(), userPassword)) { // 如果当前用户登录成功,则将user...
我们可以使用`HttpSession`的`invalidate()`方法来实现这一功能。假设我们有一个用户ID,想要踢出该用户,可以这样做: ```java public void kickUser(String userId) { for ( HttpSession session : session...
通过JSP(JavaServer Pages)可以方便地实现这一功能。本文将基于给定的代码片段和描述,详细介绍如何利用JSP技术来实现在线人数和在线用户的统计。 #### 关键技术介绍 1. **JSP (JavaServer Pages)** - JSP是一...
综上所述,`java使用HttpSession实现QQ的访问记录`是一个简单的实例,演示了如何使用`HttpSession`进行会话管理,并在多个请求之间保持状态。实际项目中,还需要考虑更多因素,如安全性、性能优化以及会话管理策略等...
本项目“实现验证码功能的登陆界面”是基于Java技术,利用Servlet实现的一个简单的验证码登录界面,旨在帮助学习者理解验证码的工作原理和实现方法。 验证码的主要目的是增加一个验证步骤,确保用户是真实的、有...
在这个"Servlet实现猜数字大小游戏"项目中,我们将探讨如何使用Servlet和session技术来创建一个互动的在线猜数字游戏。 首先,让我们理解Servlet的基本概念。Servlet是Java提供的一种服务器端的编程接口,它允许...
本示例探讨的是如何使用这两种技术来实现一个简单的登录功能,这是一个基础但关键的功能,对于任何Web应用程序来说都是必不可少的。 首先,让我们深入了解一下Servlet。Servlet是Java编写的小型服务器端程序,它...
2. 会话管理:登录成功后,服务器通常会创建一个HttpSession对象,将用户的ID或其他标识信息存储在会话中,以便后续请求能识别用户身份。这有助于实现会话持久化,防止未授权访问。 四、显示所有用户 1. 数据获取:...
在这个场景下,我们将深入理解如何使用JSP Session来实现一个简单的购物车功能。 首先,我们需要理解什么是Session。在Web开发中,Session是服务器为每个用户创建的一个特殊对象,用于存储用户特定的信息。当用户...
在本项目中,"JSP+JavaBean+Servlet技术实现某网站用户注册和登录功能",我们探讨了三种核心技术在Web开发中的应用,这三种技术是构建动态网站的基础。以下是这些技术的详细说明: 1. **JavaServer Pages (JSP)**: ...
- **编写JSP页面**:实现视图展示,使用Struts标签库增强功能。 - **编写Service层**:处理具体的业务逻辑,例如数据库操作等。 ### 2. JSP内置对象和动作 #### 内置对象 JSP提供了多个内置对象,用于简化页面开发...
4. **session**:这个对象是`HttpSession`,用于存储与特定用户会话相关的数据。会话在用户打开网站并持续到关闭浏览器或会话超时。关键方法有`getAttribute()`, `setAttribute()`, `getId()`, `invalidate()`来管理...
了解并熟练使用ServletAPI对于开发基于Java EE的Web应用至关重要,它允许开发者构建动态、交互式的Web应用程序,并与其他Java EE服务进行集成,如EJB、JPA等,从而实现复杂的企业级功能。通过深入学习和实践,开发者...
本篇文章将详细介绍如何使用Servlet来实现一个简单的验证码功能,并在JSP页面上进行展示。 一、验证码的基本原理 验证码的本质是生成一段随机的字符串,通常包含字母、数字,有时会加入一些特殊字符,以增加识别...