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 之外,但与其它的控制器或业务逻辑组件仍是分开的。
- ››Google运作经理Bryan Power给出的GOOGLE求职意见
- ››Google用户体验的十大设计原则
- ››Google Analytics(分析)能为网站带来什么
- ››Google goggles图片搜索 如何优化一个wap网站
- ››Google Docs将增加iPhone和Android编辑功能
- ››Google Android操作系统内核编译图文教程
- ››google map api 与jquery结合使用--控件,监听器...
- ››google map api 与jquery结合使用(2) --标注,浮...
- ››google map api 与jquery结合使用(3) --图标样式...
- ››Google 首页代码分析及简评
- ››Got a packet bigger than ‘max_allowed_packet’...
- ››Google财经更新iPhone和Android版本
更多精彩
赞助商链接