WEB开发网
开发学院软件开发Java Go-ForIt 记事:eXtreme DragonSlayers 专题报告,... 阅读

Go-ForIt 记事:eXtreme DragonSlayers 专题报告,第 3 部分: 会话管理、servlet 和维护状态

 2009-11-06 00:00:00 来源:WEB开发网   
核心提示: 构建会话的代码示例下面是一个简单却完整的 servlet 示例,该 servlet 存储它被请求的次数,Go-ForIt 记事:eXtreme DragonSlayers 专题报告,第 3 部分: 会话管理、servlet 和维护状态(7),因为 GoFor-It.com 项目使用会话来存储从数

构建会话的代码示例

下面是一个简单却完整的 servlet 示例,该 servlet 存储它被请求的次数。因为 GoFor-It.com 项目使用会话来存储从数据库中提取出的用户信息,它有额外的代码用来做其它的事情,这样可能会把问题搞乱。在这个例子中,我们创建一个 servlet,它存储 greeting 以及自己被请求的次数。 在该 servlet 被请求 5 次后,会话被删除计数开始从 1 计起。

要运行这个示例,您需要最新的 JDK 和 JSDK、某种类型的 servlet 引擎和一个 HTTP 服务器。 我在 VisualAge for Java 的测试环境中运行这个示例,这个测试环境包含所有的先决条件, 但如果 JDK 和 JSDK 是当前版本,这段代码应该能够在其它的版本下运行。

下面的示例遵循下列步骤:

创建 2 个类:一个管理会话( SessionTest.java ),另一个( VisitInformation.java )是存储在会话中的对象。

SessionTest 类的 doPost() 和 doGet() 方法都调用 performTask() 方法,该方法执行所有的工作。

VisitInformation 类有一对变量( numberOfVisits 和 greetingText )和几个用于获取和设置这些变量的方法。

在设置好一些初始变量后,SessionTest performTask() 方法所做的第一件事就是请求会话允许它在会话不存在时创建一个新会话。

然后它创建一个 VisitInformation 对象的实例,(标记为 “visits”),它拥有会话数据。它首先尝试从会话中取对象。如果在会话中找不到对象,它就创建一个新对象。

它测试会话是不是新的( session.isNew() )― 意思是会话是不是第一次被访问 ― 如果不是,则复位 greeting。

它通过调用 visits.incrementVisitCount() 使页面请求计数增加。

上一页  2 3 4 5 6 7 8 9  下一页

Tags:Go ForIt 记事

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接