Go-ForIt 记事:eXtreme DragonSlayers 专题报告,第 8 部分: 陷入多级显示漩涡
2009-11-06 00:00:00 来源:WEB开发网如上图所示,
EditPAErrandsServlet 为 PA 从 HttpSession 对象获取 User 对象。
EditPAErrandsServlet 检查 HttpSession 对象,确定是否有一列 bean 存储在那里。这个 servlet 在几种情况下被调用。首先是当 PA 选择菜单的 Display Errands 时调用它。此时,还未从数据库检索差事列表,所以没有 ErrandListBean 存储在会话对象中。稍后,当 PA 从列表中选择了差事并对它进行处理之后,控制权返回到这个 servlet 以重新显示这张列表。 此时,列表在会话对象中将是可用的。
在第一次访问时, HttpSession 将返回空,所以 servlet 调用一个会话 bean GetPAErrandsCommandBean 来检索差事列表。会话 bean 请求来自 ErrandsListEJB (它返回一个将以列表形式显示的差事标识数组)的差事结果集。
会话 bean 将 bean ErrandListBean 中的数组返回到 servlet,然后 servlet 将这个 bean 保存在 HttpSession 对象中。我们将它保存在 HttpSession 对象中是为了便于在后来的请求中使用。
EditPAErrandsServlet 实例化一个视图 bean GetErrandListHTMLView ,将 ListErrandBean 传递给构造函数。 GetErrandListHTMLView 生成将列表中每个差事显示为表中一行的 HTML,并保留 HTML 表直到需要该表时。理想情况下,我们希望遵守模型-视图-控制器(model view controller(MVC))范例,尽可能不把 Java 代码放在 JSP 中,并把逻辑放在 servlet(控制器)或会话 bean 中。
我们还试图不在会话 bean 中创建任何“有视图意识的”代码。这使得 Java 程序员能够将注意力集中在业务逻辑上,而不必考虑 UI(及其全部 HTML 和 JSP 等小功能部件)、同时使得界面设计者和实现者能够将注意力集中在如何显示内容上(避开那些讨厌的、不合作的 Java 代码)。这种情况的一个优秀解决方案是视图 bean。视图 bean 将 Java 代码放在 JSP 之外,但与其它的控制器或业务逻辑组件仍是分开的。
- ››Godaddy域名解析使用DNSPOD方法
- ››GOV.CN域名解析修改
- ››Google搜索引擎的奥秘
- ››Google测试搜索结果页面右侧内容更丰富的信息栏
- ››Google Dart精粹:应用构建,快照和隔离体
- ››google的代码审查
- ››google analytics清晰追踪爬虫的爬行信息
- ››Google+中文用户在两千万Google+大军中是少数派
- ››Google AdWords最昂贵点击成本的20种关键词分类
- ››Google运作经理Bryan Power给出的GOOGLE求职意见
- ››Google用户体验的十大设计原则
- ››Google Analytics(分析)能为网站带来什么
更多精彩
赞助商链接