免费智能真题库 > 历年试卷 > 系统架构设计师 > 2009年下半年 系统架构设计师 上午试卷 综合知识
  第39题      
  知识点:   J2EE的核心技术   J2EE   构件   控制器
  关键词:   J2EE   MVC   构件   客户端   控制器        章/节:   基于构件的开发       

 
在一个典型的基于MVC (Model View Controller)的J2EE应用中,分发客户请求、有效组织其他构件为客户端提供服务的控制器由(39)实现。
 
 
  A.  Entity Bean
 
  B.  Session Bean
 
  C.  Servlet
 
  D.  JSP
 
 
 

 
  第38题    2018年下半年  
   34%
EJB是企业级Java构件,用于开发和部署多层结构的、分布式的、面向对象的Java应用系统。其中,(36)负责完成服务端与客户端的交互..
  第36题    2018年下半年  
   30%
EJB是企业级Java构件,用于开发和部署多层结构的、分布式的、面向对象的Java应用系统。其中,(36)负责完成服务端与客户端的交互..
  第41题    2016年下半年  
   75%
基于JavaEE平台的基础功能服务构建应用系统时,(41)可用来集成遗产系统。
   知识点讲解    
   · J2EE的核心技术    · J2EE    · 构件    · 控制器
 
       J2EE的核心技术
        J2EE为设计、开发、装配和部署企业级应用程序提供了一个基于构件的解决方案。使用J2EE可以有效地减少费用,快速设计和开发企业级的应用程序。J2EE平台提供了一个多层结构的分布式应用程序模型,该模型具有重用构件的能力、基于XML的数据交换、统一的安全模式和灵活的事务控制。使用J2EE不仅可以更快地发布新的解决方案,而且独立于平台的特性让使用J2EE的解决方案不受任何提供商的产品和API的限制。用户可以选择最合适自己的商业应用和所需技术的产品和构件。
        (1)EJB。EJB是Java服务器端的构件模型。EJB容器作为EJB构件的执行环境,提供服务器端的系统级功能,包括线程管理、状态管理和安全管理等。EJB定义了访问构件服务的分布式客户接口模型,通过RMI-IIOP(Java Remote Method Invocation-Internet Inter-ORB Protocol),EJB可以同COBRA对象进行互操作。使用Java开发的EJB具有一次编写到处运行的优点,按照标准开发的EJB构件可以部署到任何一个支持EJB标准的应用服务器中。使用EJB开发企业应用,可以缩短开发周期,开发人员只需要将注意力集中在业务逻辑的实现上,底层服务完全由EJB容器提供。使用EJB开发的业务逻辑部分具有很好的移植性,不需要更改EJB的代码,开发人员能够将EJB从一种操作环境移植到另一种操作环境。
        (2)JDBC。JDBC是Java语言连接数据库的标准,从免费的Mysql到企业级的DB2和Oracle,JDBC都提供了很好的接口。JDBC API有两个部分,一个用来访问数据库的应用程序级的接口,另一个用来将JDBC驱动整合到J2EE平台中的服务提供商接口。
        (3)Java Servlet(Java服务器端小程序)。在Servlet技术中封装了HTTP协议,开发者不需要处理复杂的网络连接和数据包,就可以扩展Web服务器的功能。类似于其他服务器端程序,Servlet完全运行于Web服务器中,具有不错的效率和更好的移植性。
        (4)JSP(Java Server Page,Java服务器页面)。可以认为这是一种高层的Servlet,在服务器端,JSP总是首先被编译成Servlet运行的。如同在ASP(Active Server Page,动态服务器页面)中直接使用VBScript一样,使用JSP可以直接在HTML代码中嵌入Java代码,并提交给服务器运行。使用JSP便于逻辑和表现形式的分离。
        (5)JMS(Java Message Service,Java消息服务)。JMS是一个消息标准,它允许J2EE应用程序建立、发送、接收和阅读消息。它使得建立连接简单的、可靠的和异步的分布式通信成为可能。
        (6)JNDI(Java Naming and Directory Interface,Java命名目录接口)。JNDI提供命名的目录功能,为应用程序提供标准的目录操作的方法,例如,获得对象的关联属性、根据它们的属性搜寻对象等。使用JNDI,一个J2EE应用程序可以存储和重新得到任何类型的命名Java对象。因为JNDI不依赖于任何特定的执行,应用程序可以使用JNDI访问各种命名目录服务,这使得J2EE应用程序可以和传统的应用程序与系统共存。
        (7)JTA(Java Transaction API,Java事务API)。JTA提供事务处理的标准接口,EJB使用JTA与事务处理服务器通信。JTA提供启动事务、加入现有的事务、执行事务处理和恢复事务的编程接口。
        (8)Java Mail API(Java邮件API)。J2EE应用程序可以使用Java Mail API来发送电子邮件。Java Mail API包含两部分,分别是应用程序级接口和服务接口。
        (9)JAXP(Java XML解析API)。JAXP支持DOM、SAX(Simple API for XML,简单应用程序接口)、XSLT(eXtensible Stylesheet Language for Transformation)转换引擎。JAXP使得应用程序可以更简单的处理XML。
        (10)JCA(J2EE Connector Architecture,J2EE连接架构)。JCA是对J2EE标准集的重要补充,它注重的是用于将Java程序连接到非Java程序和软件包的中间件的开发。JCA包括3个关键的元素,分别是资源适配器、系统界面、通用客户界面。JCA在功能上比Web服务要丰富,但是它发布起来更难,而且限制了只能从Java环境访问它们。
        (11)JAAS(Java Authentication Authorization Service,Java认证和授权服务)。JAAS提供灵活和可伸缩的机制来保证客户端或服务器端的Java程序,它让开发者能够将一些标准的安全机制通过一种通用的,可配置的方式集成到系统中。
 
       J2EE
        J2EE的全称是Java2EnterpriseEdition,它是由SUN公司领导,各厂商共同制定,并得到广泛认可的工业标准。业内许多大的应用服务器厂商如IBM、BEA、Oracle等都积极地参与J2EE标准的制定和实施工作。
        J2EE是专门为企业应用制定的标准,企业可以用它来编制企业级的应用,它为企业应用提供了数据库存取,交易完整性,可靠消息传递等功能。从公元2000年开始,越来越多的企业把自己的关键应用开始构建在支持J2EE标准的Web应用服务器之上。现在主流的一些J2EE应用服务器都可以支持企业应用所需的稳定性、可用性、安全性、可靠性、可扩展性等。
 
       构件
        为了达到门户站点的基本要求,一个企业的网站应当由以下构件组成:
        (1)应用服务器(Application Server)。主要用于企业较大规模电子商务应用的开发、发布和管理,同时实现与企业原有系统的集成。
        (2)工作流和群件服务器。主要用于使工作人员和商业伙伴能通过Internet共享资源、协同工作。
        (3)内容管理子系统。简化企业网站的产品管理、提高效率,并将相应的、经过筛选的内容发送给最终用户。
        (4)目录服务器。企业使用它来管理防火墙内外的用户、资源和控制安全权限,同时为用户的通信和电子商务提供一个通道。
        (5)性能优化工具。改善网站服务质量,包括流量管理、动态数据缓存、网络动态负载(Load Balancing)、知识管理等。
        (6)邮件和消息服务器。使企业和服务提供者能为所有员工、合作伙伴和客户社区提供商业级的通信架构。
        (7)个性化信息服务。在实时分析用户数据的基础上提供一对一的交易平台。通过对用户行为的更好理解,企业更跟踪、分析和理解网站用户。
        (8)搜索引擎。用户提供更广泛的资源。
        (9)安全服务器。包括数据安全、应用安全和交易完全。其基本内容有用防火墙阻止对网络的非授权访问,在安全和个人的角色授权的基础上,只需一次登录就可以访问网站的所有应用,通过提供一种对在线交易的每一方的可信任的授权方式,帮助客户、合作伙伴和员工访问Internet应用。
        (10)网站服务器(Web Server)。将各种网站的信息发布给用户。
        以上是通常构建网站所需要的构件,企业可针对自己的特点以及网站规模大小,应用的类型等自行选择。
        在网站结构的实现上,通常在逻辑上将网站分为三层:表示层、应用逻辑层、数据层。这种结构使得网站具有较好的可扩充性,将表示层与业务功能的实现分离开来,能够更灵活地适应业务的发展。网站不需要对业务逻辑组件进行任何变动,就能够适用新出现的表示形式和客户端。例如,为了使用户更方便地在网站上购物,网站调整了页面格局和页面风格。由于网站结构层次分明,只需要改动网站表示层,业务逻辑层和数据连接层则不需要改变。
        (11)表示层和相关技术。表示层用于为最终用户提供一个友好的用户界面,接受用户提交的事件,并将处理的结果返还给用户。这一层作为应用的前端和“窗口”,决定了用户对网站优劣的评价和总体印象。
        网站从总体上说是独立于客户端的,客户端包括基于浏览器的HTML客户端、给予Java的客户端、传统的C/C++应用、Power Builder客户端以及VB客户端。
        在表示层除了使用最基本的HTML语言外,通常还利用JavaScript Internet脚本语言,以及Java Internet程序开发语言。JavaScript程序运行在客户端,能够完成用户事件获取、数据提交前的合法性校验、错误检查和实现动画效果等。而利用Java开发的JavaServlet程序运行于服务器端,负责实现与业务逻辑层的交互,从业务逻辑层获得数据,并将用户提交的信息传给业务逻辑层,而基于Java语言的JSP程序,则实现数据的动态显示,它将JavaServlet程序获得的数据形成相应的HTML页面传给客户端。
        为了适应电子商务的各种需求,新的表示层技术不断发展。如XML(可扩展标记语言)和RDF(资源描述框架)等都是当前最新的、对表示层产生重大影响的技术。XML通过一种结构化的文本方式来表述数据;RDF提供一种统一的、可互操作的方法通过Internet在程序间交换元数据。
        (12)商务逻辑与实现。商务逻辑层是电子商务系统的核心,也是系统建造过程中的重点和难点。商务逻辑层包括商务应用程序、支持平台(包括商务服务层、商务支持层和基础支持层)。
        支持层向上层(商务应用层)提供的服务主要包括:表达、商务支持、运行支持、开发与集成服务。构成支持平台的技术产品至少应当包括:Web服务器、商务支持软件、集成与开发工具、计算机主机、网络及其他系统软件(如操作系统、管理工具软件等)。
        通常,Web服务器、商务支持软件、部分集成开发环境被集成到一个被称为“应用服务器”的软件包里,所以商务逻辑层在物理上可以简化为以下三个部门:应用软件(实现商务逻辑);应用服务器(为应用软件提供软件支持平台)和其他支持软件;计算机主机及网络(为应用软件提供硬件支持平台)。
        构造商务逻辑层的任务是为选择合适的应用服务器和其他支持软件,开发实现商务逻辑的应用软件系统。
        (13)数据层及实现。构造数据层的关键是开发电子商务与外部系统、内部资源系统的接口,完成系统集成。
        数据层的数据源主要包括:相关信息系统(如ERP系统)的数据与企业的数据库,企业与协作企业(如供应商)间交换的数据,企业与银行间交换的数据,企业与认证中心之间的认证数据,企业与其他商务中介交换的电子数据。
        由于企业商务逻辑的处理过程是一个从市场、销售、采购到客户服务的整体,所以必须将商务逻辑处理过程中所涉及到的数据集成到一起,因此构造数据层的任务是:实现电子商务系统与企业内部和外部信息系统之间的网络互联,并确保安全的网络环境,基于应用服务器平台的商务应用系统与企业内部数据的共享。
 
       控制器
        控制器是指挥、协调计算机各大部件工作的指挥中心。控制器工作的实质就是解释、执行指令。它每次从存储器中取出一条指令,经分析译码,产生一串微操作命令,发向各个执行部件并控制各部件,使整个计算机连续地、有条不紊地工作。
        为了使计算机能够正确执行指令,CPU必须能够按正确的时序产生操作控制信号,这是控制器的主要任务。
        如下图所示,控制器主要由下列部分组成。
        
        控制器组成图
        (1)程序计数器(PC)。又称指令计数器或指令指针(IP),在某些类型的计算机中用来存放正在执行的指令地址;在大多数机器中则存放要执行的下一条指令的地址。指令地址的形成有两种可能:一是顺序执行的情况,每执行一条指令,程序计数器加“1”以形成下条指令的地址。该加“1”计数的功能,有的机器是PC本身具有的,也有的机器是借用运算器完成的;二是在某些条件下,需要改变程序执行的顺序,这常由转移类指令形成转移地址送到PC中,作为下条指令的地址。
        (2)指令寄存器(IR)。用以存放现行指令,以便在整个指令执行过程中,实现一条指令的全部功能控制。
        (3)指令译码器。又称操作码译码器,它对指令寄存器中的操作码部分进行分析解释,产生相应的控制信号提供给操作控制信号形成部件。
        (4)脉冲源及启停控制线路。脉冲源产生一定频率的脉冲信号作为整个机器的时钟脉冲,是周期、节拍和工作脉冲的基准信号。启停线路则是在需要的时候保证可靠地开放或封锁时钟脉冲,控制时序信号的发生与停止,实现对机器的启动与停机。
        (5)时序信号产生部件。以时钟脉冲为基础,产生不同指令相对应的周期、节拍、工作脉冲等时序信号,以实现机器指令执行过程的时序控制。
        (6)操作控制信号形成部件。综合时序信号、指令译码信息、被控功能部件反馈的状态条件信号等,形成不同指令所需要的操作控制信号序列。
        (7)中断机构。实现对异常情况和某些外来请求的处理。
        (8)总线控制逻辑。实现对总线信息传输的控制。
   题号导航      2009年下半年 系统架构设计师 上午试卷 综合知识   本试卷我的完整做题情况  
1 /
2 /
3 /
4 /
5 /
6 /
7 /
8 /
9 /
10 /
11 /
12 /
13 /
14 /
15 /
 
16 /
17 /
18 /
19 /
20 /
21 /
22 /
23 /
24 /
25 /
26 /
27 /
28 /
29 /
30 /
 
31 /
32 /
33 /
34 /
35 /
36 /
37 /
38 /
39 /
40 /
41 /
42 /
43 /
44 /
45 /
 
46 /
47 /
48 /
49 /
50 /
51 /
52 /
53 /
54 /
55 /
56 /
57 /
58 /
59 /
60 /
 
61 /
62 /
63 /
64 /
65 /
66 /
67 /
68 /
69 /
70 /
71 /
72 /
73 /
74 /
75 /
 
第39题    在手机中做本题