免费智能真题库 > 历年试卷 > 系统架构设计师 > 2018年下半年 系统架构设计师 上午试卷 综合知识
  第36题      
  知识点:   J2EE的核心技术   构件标准   EJB   Java   构件   数据库
  关键词:   并发   持久化   构件   开发   客户端   面向对象   数据库   对象   数据        章/节:   基于构件的开发       

 
EJB是企业级Java构件,用于开发和部署多层结构的、分布式的、面向对象的Java应用系统。其中,(36)负责完成服务端与客户端的交互;(37)用于数据持久化来简化数据库开发工作;(38)主要用来处理并发和异步访问操作。
 
 
  A.  会话型构件
 
  B.  实体型构件
 
  C.  COM构件
 
  D.  消息驱动构件
 
 
 

 
  第38题    2018年下半年  
   34%
EJB是企业级Java构件,用于开发和部署多层结构的、分布式的、面向对象的Java应用系统。其中,(36)负责完成服务端与客户端的交互..
  第42题    2014年下半年  
   59%
在构件组装过程中需要检测并解决架构失配问题。其中(42)失配主要包括由于系统对构件基础设施、控制模型和数据模型的假设存在冲..
  第35题    2010年下半年  
   38%
(35)是一个独立可交付的功能单元,外界通过接口访问其提供的服务。
 
  第37题    2018年下半年  
   30%
EJB是企业级Java构件,用于开发和部署多层结构的、分布式的、面向对象的Java应用系统。其中,(36)负责完成服务端与客户端的交互..
  第39题    2009年下半年  
   49%
在一个典型的基于MVC (Model View Controller)的J2EE应用中,分发客户请求、有效组织其他构件为客户端提供服务的控制器由(39)实现..
  第38题    2018年下半年  
   34%
EJB是企业级Java构件,用于开发和部署多层结构的、分布式的、面向对象的Java应用系统。其中,(36)负责完成服务端与客户端的交互..
   知识点讲解    
   · J2EE的核心技术    · 构件标准    · EJB    · Java    · 构件    · 数据库
 
       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程序,它让开发者能够将一些标准的安全机制通过一种通用的,可配置的方式集成到系统中。
 
       构件标准
        构件是软件系统可替换的、物理的组成部分,它封装了实现体(实现某个职能),并提供了一组接口的实现方法。可以认为构件是一个封装的代码模块或大粒度的运行时模块,也可以将构件理解为具有一定功能、能够独立工作或与其他构件组合起来协调工作的对象。
        对于构件,应当按可重用的要求进行设计、实现、打包、编写文档。构件应当是内聚的,并具有相当稳定的、公开的接口。为了使构件更切合实际、更有效地被重用,构件应当具备可变性,以提高其通用性。构件应向重用者提供一些公共特性,另一方面还要提供可变的特性。针对不同的应用系统,只需对其可变部分进行适当的调整,重用者要根据重用的具体需要,改造构件的可变特性,即客户化。需要进行客户化的构件称为抽象构件,而可以直接重用的构件称为具体构件。通用性越好,其被重用的面就越广。可变性越好,构件就越易于调整,以便适用于具体的应用环境。
        为了将不同软件生产商在不同软硬件平台上开发的构件组装成一个应用系统,必须解决异构平台各构件间的互操作问题,目前已出现了一些支持互操作的构件标准,3个主要流派为OMG(Object Management Group,对象管理集团)的CORBA(Common Object Request Broker Architecture,公共对象请求代理)、Microsoft的COM(Component Object Model,构件对象模型)/DCOM(Distributed Component Object Model,分布式构件对象模型)和Sun的EJB(Enterprise JavaBean,企业JavaBean)。
        CORBA是由OMG制定的一个工业标准,其主要目标是提供一种机制,使得对象可以透明地发出请求和获得应答,从而建立起一个异质的分布式应用环境。CORBA技术规范的主要内容包括接口定义语言、接口池、动态调用接口、对象适配器等。
        EJB是用于开发和部署多层结构的、分布式的、面向对象的Java应用系统的跨平台的构建架构。使用EJB编写的应用程序具有可扩展性、交互性,以及多用户安全的特性。这些应用只需要写一次,就可以发布到任何支持EJB规范的服务器平台上。有3种类型的EJB,分别是会话Bean、实体Bean和消息驱动Bean。
        Microsoft的分布式DCOM扩展了COM,使其能够支持在局域网、广域网甚至Internet上不同计算机的对象之间的通信。使用DCOM,应用程序就可以在位置上达到分布性,从而满足客户和应用的需求。因为DCOM是COM的无缝扩展,所以可以将基于COM的应用、构件、工具,以及知识转移到标准化的分布式计算领域中来。在做分布式计算时,DCOM处理网络协议的低层次细节问题,从而使我们能够集中精力解决用户所要求的问题。DCOM具有语言无关性。任何语言都可以用来创建COM构件,并且这些构件可以使用更多的语言和工具。
 
       EJB
        EJB在JavaEE中用于封装中间件的业务功能。
        EJB组件部署在EJB容器中,客户应用程序通过接口访问它们,体现了接口和实现分离的原则。
 
       Java
        Java语言起源于Oak语言,Oak语言被设计成能运行在设备的嵌入式芯片上。
        Java编译成伪代码,这需要一个虚拟机来对其进行解释,Java的虚拟机在几乎每一种平台上都可以运行。这实质上使得开发是与机器独立无关的,并且提供了通用的可移植性。
        Java把类的概念和接口的概念区分开来,并试图通过只允许接口的多继承来克服多继承的危险。
        Java的异常处理机制与C++的try/throw/catch相类似,但更加严密。在Java中,通过声明轻型线程来处理并发性,这些线程通过副作用和同步协议进行通信。
        Java Beans是组件,即类及其所需资源的集合,它们主要被设计用来提供定制的GUI小配件。
        Java中关于面向对象概念的术语有对象、类、方法、实例变量、消息、子类和继承。
 
       构件
        为了达到门户站点的基本要求,一个企业的网站应当由以下构件组成:
        (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系统)的数据与企业的数据库,企业与协作企业(如供应商)间交换的数据,企业与银行间交换的数据,企业与认证中心之间的认证数据,企业与其他商务中介交换的电子数据。
        由于企业商务逻辑的处理过程是一个从市场、销售、采购到客户服务的整体,所以必须将商务逻辑处理过程中所涉及到的数据集成到一起,因此构造数据层的任务是:实现电子商务系统与企业内部和外部信息系统之间的网络互联,并确保安全的网络环境,基于应用服务器平台的商务应用系统与企业内部数据的共享。
 
       数据库
        数据库(DataBase,DB)是指长期存储在计算机内的、有组织的、可共享的数据集合。数据库中的数据按一定的数据模型组织、描述和存储,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种用户共享。
        系统使用的所有数据存储在一个或几个数据库中。
   题号导航      2018年下半年 系统架构设计师 上午试卷 综合知识   本试卷我的完整做题情况  
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 /
 
第36题    在手机中做本题