JSP 教程 之 JSP Session 2

简介: JSP教程讲解了如何使用Session进行会话跟踪。HTTP协议本身无状态,但JSP通过HttpSession接口存储用户信息。默认开启会话跟踪,可设置`<%@ page session="false" %>`禁用。session对象提供多种方法,如getAttribute()获取绑定对象,getCreationTime()获取创建时间,setAttribute()用于存储数据,以及invalidate()使会话失效。这些方法便于开发者管理用户会话和数据。

JSP 教程 之 JSP Session 2

JSP Session

HTTP是无状态协议,这意味着每次客户端检索网页时,都要单独打开一个服务器连接,因此服务器不会记录下先前客户端请求的任何信息。

session对象

除了以上几种方法外,JSP利用servlet提供的HttpSession接口来识别一个用户,存储这个用户的所有访问信息。

默认情况下,JSP允许会话跟踪,一个新的HttpSession对象将会自动地为新的客户端实例化。禁止会话跟踪需要显式地关掉它,通过将page指令中session属性值设为false来实现,就像下面这样:

<%@ page session="false" %>
JSP引擎将隐含的session对象暴露给开发者。由于提供了session对象,开发者就可以方便地存储或检索数据。

下表列出了session对象的一些重要方法:

S.N. 方法 & 描述
1 public Object getAttribute(String name)
返回session对象中与指定名称绑定的对象,如果不存在则返回null
2 public Enumeration getAttributeNames()
返回session对象中所有的对象名称
3 public long getCreationTime()
返回session对象被创建的时间, 以毫秒为单位,从1970年1月1号凌晨开始算起
4 public String getId()
返回session对象的ID
5 public long getLastAccessedTime()
返回客户端最后访问的时间,以毫秒为单位,从1970年1月1号凌晨开始算起
6 public int getMaxInactiveInterval()
返回最大时间间隔,以秒为单位,servlet 容器将会在这段时间内保持会话打开
7 public void invalidate()
将session无效化,解绑任何与该session绑定的对象
8 public boolean isNew()
返回是否为一个新的客户端,或者客户端是否拒绝加入session
9 public void removeAttribute(String name)
移除session中指定名称的对象
10 public void setAttribute(String name, Object value)
使用指定的名称和值来产生一个对象并绑定到session中
11 public void setMaxInactiveInterval(int interval)
用来指定时间,以秒为单位,servlet容器将会在这段时间内保持会话有效

目录
相关文章
|
1天前
|
Java 关系型数据库 MySQL
JSP 教程 之 JSP 连接数据库 1
**JSP连接MySQL数据库教程**:确保有JDBC驱动,如MySQL 5或8的connector。将jar包放入Tomcat的lib目录。对于MySQL 8,驱动类改为`com.mysql.cj.jdbc.Driver`,URL示例:`jdbc:mysql://localhost:3306/baidu?useSSL=false&serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8`。创建数据库`baidu`和表`websites`,包含站点信息,然后插入测试数据。
10 4
|
1天前
|
XML SQL Java
JSP 教程 之 JSP 标准标签库(JSTL) 6
**JSP JSTL 摘要:** JSTL是JSP的标签库,包含核心、格式化、SQL、XML和函数5类标签。它用于执行常见任务,如迭代、条件判断和XML操作。JSTL函数库提供字符串处理函数,如`contains()`, `endsWith()`, `escapeXml()`等,方便XML和HTML处理。通过`&lt;%@ taglib %&gt;`导入,如`fn:trim()`用于去除字符串两端空白。
11 5
|
1天前
|
XML SQL Java
JSP 教程 之 JSP 标准标签库(JSTL) 5
JSP的JSTL是用于简化JSP开发的标签库,包括核心、格式化、SQL、XML和函数五大标签集。XML标签库处理XML文档,如`&lt;x:out&gt;`显示XML数据,`&lt;x:parse&gt;`解析XML,`&lt;x:forEach&gt;`遍历节点。使用前需添加XercesImpl.jar和xalan.jar到Tomcat的lib目录。
11 6
|
2天前
|
SQL XML Java
JSP 教程 之 JSP 标准标签库(JSTL) 4
**JSP的JSTL是用于简化Web开发的标签库,包括核心、格式化、SQL、XML和函数5个部分。SQL标签库允许与数据库交互,如设定数据源、执行查询和更新,以及处理参数。例如, `&lt;sql:setDataSource&gt;` 定义数据源, `&lt;sql:query&gt;` 执行查询。通过使用JSTL,开发者能更整洁地处理JSP页面。**
18 8
|
3天前
|
XML SQL Java
JSP 教程 之 JSP 标准标签库(JSTL) 1
JSP的JSTL是用于简化页面逻辑的标签库,涵盖核心、格式化、SQL、XML和函数五大类标签。要安装,下载Apache的JSTL包,将jar文件放入WEB-INF/lib,tld文件复制到WEB-INF,并在web.xml中配置相应的taglib信息。JSTL促进了JSP页面的清洁和结构化。
13 5
|
3天前
|
Java 数据安全/隐私保护
JSP 教程 之 JSP 发送邮件 5
JSP教程讲解如何使用JSP发送邮件,涉及邮件服务器的用户认证,通过设置&quot;mail.user&quot;和&quot;mail.password&quot;属性来完成。此外,演示了如何利用HTML表单收集信息,如收件人(to),发件人(from),主题(subject)及邮件正文(messageText),并用request对象获取这些参数。
20 11
|
3天前
|
Java
JSP 教程 之 JSP 发送邮件 4
使用JSP发送带附件的邮件示例,导入必需的库,设置发件人、收件人及邮件服务器,创建`MimeMessage`,添加正文和附件到`Multipart`对象,然后通过`Transport.send()`发送邮件。成功或失败的结果会显示在HTML页面上。
17 7
|
4天前
|
Java
JSP 教程 之 JSP 发送邮件 3
**JSP教程:发送HTML邮件** 此JSP示例演示如何通过localhost发送包含HTML内容的邮件。确保已将mail和activation库添加到CLASSPATH。代码创建MimeMessage,设置发件人、收件人、主题,并用`setContent()`添加HTML正文,然后发送。结果会在页面上显示。
5 1
|
4天前
|
Java API
JSP 教程 之 JSP 发送邮件 2
在JSP中发送邮件需JavaMail API和JAF。下载JavaMail和JAF的jar文件,将其添加到CLASSPATH。以下是一个JSP示例,通过localhost发送邮件到abcd@gmail.com,并显示发送结果。要发送给多个人,使用`addRecipients()`方法添加收件人地址数组。访问http://localhost:8080/SendEmail.jsp可测试。
10 3
|
4天前
|
Java API
JSP 教程 之 JSP 发送邮件 1
在JSP中发送邮件涉及JavaMail API和JAF。下载JavaMail和JAF的jar文件,添加到CLASSPATH。下面的JSP示例演示了如何发送邮件:设置收发地址,配置SMTP主机,创建MimeMessage,填充头部和正文,然后使用Transport.send()发送。成功后,页面显示“Sent message successfully....”。访问本地服务器上的SendEmail.jsp可触发邮件发送。
12 2

相关课程

更多