Go-ForIt 记事:eXtreme DragonSlayers 专题报告,第 8 部分: 陷入多级显示漩涡
2009-11-06 00:00:00 来源:WEB开发网在 block 1 中,servlet 通过调用请求对象、res(作为参数被传递到 servlet 方法)的方法检查 session 对象。 getSession 调用使用的 false 参数指出 servlet 希望那儿有一个 session 对象;如果没有,此方法返回空。(如果您指定此参数为 true ,该方法将返回现有的 session 对象(如果存在);如果不存在,它将创建一个新的 session 对象并返回它。)
如果会话存在,servlet 通过 getValue 方法从 session 对象检索 User 对象,指定字符串 "user" 作为参数。当您在会话对象中存储内容时,您会调用 setAttribute 方法并提供一个名称/值对作为两个参数;block 2 中有这个示例。其它的组件可以通过指定名称检索值。在这种情况下,当用户登录时,登录 servlet 以 UserDataBean 的形式检索用户信息,并将值(bean)存储在会话对象中,指定 user 作为名称/值对的名称部分。实质上,我们的应用中的所有组件都引用这个 User bean 以获取一些信息,所以我们将它存储在 HttpSession 对象中,使它在多个请求中都可用。 注意:您需要强制转换返回类型 ― getValue 返回一个 Object 类型的对象。
如果没有会话对象,我们一定是错误地到达了这个 servlet,所以我们将控制权转移给登录屏幕并强制用户正确登录。
block 2 根据目前为止会话中发生的事情做两件事。首先,servlet 调用 session 的 getValue 方法,指定字符串 paErrandList 作为参数,将差事列表作为 ErrandListBean 进行检索。如果方法返回空,意味着这是第一次访问,所以 servlet 需要从数据库检索列表。此 servlet 设置命令 bean 中的用户标识,然后调用 execute() 方法,使命令 bean 获取差事列表(它为此调用一个 EJB)。然后此 servlet 调用 getPaErrands 方法从这个命令 bean 获取差事列表。
- ››Godaddy域名解析使用DNSPOD方法
- ››GOV.CN域名解析修改
- ››Google搜索引擎的奥秘
- ››Google测试搜索结果页面右侧内容更丰富的信息栏
- ››Google Dart精粹:应用构建,快照和隔离体
- ››google的代码审查
- ››google analytics清晰追踪爬虫的爬行信息
- ››Google+中文用户在两千万Google+大军中是少数派
- ››Google AdWords最昂贵点击成本的20种关键词分类
- ››Google运作经理Bryan Power给出的GOOGLE求职意见
- ››Google用户体验的十大设计原则
- ››Google Analytics(分析)能为网站带来什么
更多精彩
赞助商链接