发新话题
打印

【jsp】JSP高级编程(1)

第一章概述5

储在一个基于文本的配置描述文件中,此种文件使用XML 标记来标记该文本。应用装配商可以
使用一个能通过交互式选择来正确添加XML 标记的装配和配置工具来编辑该配置描述文件。
(4) 部署商
部署( d e p l e y)J2EE 应用程序的公司或个人。其职责包括设定事务控制、安全属性,并根
据应用组件提供商提供的指示来标明一个Enterprise Bean 是自己处理自身的存储,还是由一个
容器来处理等。部署涉及配置和安装。在配置过程中,部署商遵循应用组件提供商提供的指示
来解决外部依赖问题,定义安全设定,以及分配事务属性。在安装过程中,部署商将应用组件
安装到服务器上,并生成容器特定的类和接口。
(5) 系统管理员
配置并管理运行J2EE 应用程序的计算环境和网络基础设施,并监督运行环境的人员。
(6) 工具提供商
生产被组件提供商、装配商及部署商使用的用于进行开发、组装和打包的工具的公司或个
人。
(7) 设计用户界面和引擎
在为J2EE 应用程序设计用户界面和后端引擎时,需要决定让该程序是基于We b,还是不基
于We b。在做出这个决定时,我们可能希望考虑平台配置、速度、安全、网络流量和网络服
务。
例如,包含有用户界面并且经常被大量用户访问的一个Applet 可能需要花很长的时间才能
被下来,这让用户沮丧。然而,如果知道该A p p l e t要运行在一个公司的内部网内的受控环境
中,那么,在这种情况下,该Applet 将拥有一个完全可接受的速度。另一个考虑是,繁重
的处理应当在哪里执行。例如,如果客户程序在一个蜂窝电话或呼机中执行,服务器应当完成
尽量多的计算和数据处理,而客户程序只应显示结果就可以了。然而,设计在一个强大的台式
机平台上运行的大型财务分析系统则应当在客户机上完成其复杂计算。应用的客户程序和A p p l e t
用户界面通常都是用Swing API 创建的,该API 可从标准版Java 2平台中获得。Swing API 提供了
一整套GUI 组件(表格、树形结构、按钮等),这些组件可以被用来实现一种比用一个典型的
HTML 页面所能实现的更为交互的体验。Swing 也支持HTML 文本组件,这个组件可以被用来
显示来自一个服务器的响应。客户程序可以直接访问Enterprise Beans 层或企业信息系统层。但
应谨慎实现这种程序。绕过EJB 层的程序可以使用JDBC API 来访问一个关系型数据库,但应被
限制于对数据库表格进行维护等管理任务上。
(8) 设计基于Web 的应用程序
基于Web 的应用程序是基于浏览器的,并且,如果它们运行在Internet上,就可能被全世界
的人访问。当设计一个基于Web 的应用程序时,不仅需要决定用什么来处理内容和应用逻辑
(HTML 、XML 、JSP 页面及S e r v l e t),而且还应当考虑使该应用程序国际化。一个国际化的基
于Web 的应用程序向用户提供了选择一种语言,然后根据该选定语言加载应用的正文的方式。
对被支持的每种语言而言,应用正文都被存储在一个外部文件中,并且与另外一个文件的关键
词相对应。应用代码使用这些关键词及选定的语言来加载正确的文本。国际化API 还提供类来
根据选定的语言格式化日期和金钱。一旦制订了使应用程序国际化的细节,就可以决定用什么
6第一部分JSP 入门

来实现它了。总的来说,一个基于Web 的应用程序使用HTML 来显示数据; 用X M L来定义数据
以使其可被另一个程序读取并处理; 使用JSP 页面或S e r v l e t来管理用户与业务层或存储层之间的
数据流。
可以在J2EE 平台上实现的基于Web 的应用程序有四种。从简单到复杂排列,它们是:
B基本H T M L。
B带基本JSP 页面或Servlet 的H T M L。
B带Java Beans 类的JSP页面。
B将应用逻辑根据功能划分成区域的高度结构化的应用。
当设计一个基于Web 的应用程序时,需要决定用什么来建立它。如果是从建立一个简单的
应用程序开始着手,并且认为以后会给该应用程序添加功能,那么,设计就应当适应今后发展
的需要。
(9) 模型、视图和控制器架构
在基于组件的J2EE 平台充分内置了灵活性的情况下,剩下的问题可能是如何组织应用程序
以实现简单高效的应用程序升级和维护,以及如何让不懂程序代码的人员避开程序数据。答案
就在模型、视图和控制器架构( MVC )的使用之中。MVC 这样的架构是一个描述重现的问题
及其解决方案的设计范式,但每次问题重现时,解决方案都不会完全相同。
MVC 设计范式包括三种对象:模型( model )提供应用业务逻辑( Enterprise Beans 类);
视图( view )则是其在屏幕上的显示( HTML 页面、JSP 页面、Swing GUI ); 控制器则是
Servlet 、JavaBeans 或Session Beans 类,它用于管理用户与视图发生的交互。我们可以将控制
器想像成处在视图和数据之间,对视图如何与模型交互进行管理。通过使视图完全独立于控制
器和模型,就可以轻松替换前端客户程序。并且,通过将控制器和模型代码保持在视图之外,
那些不理解这些代码的人员就不能改变他们不应改变的东西。
将控制器和模型分开就可以在不影响模型的情况下改变控制器,也可以在不影响控制器的
情况下改变模型。例如,如果应用的前端是一个HTML 页面,HTML 专家就可以更新它。如果
使用一个JSP页面,将控制器的代码放到一个JavaBeans 或SessionBeans 类中,或使用动作标记
(action tags ),这样,JSP 页面就仅包含JSP 代码了。
本书将在第二部分中讲解如何使用J 2 E E来建立企业级的We b应用。
1.1.5 EJB
E J B就是前面说的Enterprise JavaBeans。E J B上层的分布式应用程序是基于对象组件模型的,
低层的事务服务使用了A P I技术。E J B技术简化了用J AVA语言编写的企业应用系统的开发、配置
和执行。E J B的体系结构规范由Sun Microsystems公司制定。
E J B技术定义了一组可重用的组件: Enterprise Beans。可以利用这些组件像搭积木一样你的
建立分布式应用程序。当你把代码写好之后,这些组件就被组合到特定的文件中去。每个文件
有一个或多个Enterprise Beans,在加上一些配置参数。最后,这些Enterprise Beans被配置到一
个装了E J B容器的平台上。客户能够通过这些B e a n s的Ho m e接口,定位到某个Be a n s,并产生这
个Be a n s的一个实例。这样,客户就能够调用B e a n s的应用方法和远程接口。
发新话题
最近访问的版块