第1题:
某软件公司承担了某大型企业应用系统集成任务,该企业随着信息化的进展,积累了许多异构的遗产信息系统,这些系统分别采用J2EE、.NET等技术进行开发,分布在不同的地理位置,采用不同的协议进行数据传输。企业要求集成后的系统能够实现功能整合,并在组织现有功能的基础上提供增值服务。为了按时完成任务,选择合适的企业应用集成方法和架构非常重要。项目组在讨论方案时,提出了两种集成思路。
①刘工建议采用传统的应用集成方法,将应用集成分为多个层次,并采用消息代理中间件连接遗产系统。
②王工建议采用基于SOA的方法进行应用集成,将现有遗产系统采用WebService的方式进行包装,暴露统一格式的接口,并采用企业服务总线(ESB)进行连接。
项目组仔细分析比较了两种方案的优点和不足后,认为刘工和王工的建议都合理,但是结合当前项目的实际情况,最后决定采用王工的建议。
针对该企业的集成实际情况,请用200字以内的文字叙述王工建议中企业服务总线(ESB)应该具有的基本功能。
针对该企业的集成实际情况,ESB的基本核心功能包括:
①提供位置透明性的路由和寻址服务。
②控制服务寻址和命名的管理功能。
③至少一种形式的消息传递范型(如请求/响应、发布/订阅等)。
④支持至少一种可以广泛使用的传输协议和协议转换。
⑤支持服务提供的多种集成方式。如Java2连接器、Web服务、异步通信、适配器等。
第2题:
阅读以下关于Java企业级应用系统开发体系结构选择方面的叙述,在答题纸上回答问题1至问题3。
博学公司承担了某中小型企业应用软件开发任务,进度要求紧迫。为了按时完成任务,选择合适的企业应用系统开发体系结构非常重要。因此,首席架构师张博士召集了相关技术人员进行方案讨论,在进行方案论证时,项目组成员提出了两种开发思路。
(1)谢工建议采用J2EE和EJB进行开发。理由是J2EE定义了标准的应用开发体系结构和部署环境,EJB是J2EE的基础和核心。J2EE的主要目标是简化开发。
(2)王工建议采用Struts、Spring和Hibernate轻量级开源框架相结合的方式。理由是随着Java开源项目阵营的发展壮大,一些基于POJOs(PlanOldJavaObjects)的开源框架被广泛地引入到Java企业应用开发中来,与重量级的EJB框架相比,这些轻量级的框架有很多优点。
针对这两种思路,张博士仔细比较和分析了两种方案的特点、优点和不足之处。认为王工和谢工的建议都合理,但是,从结合当前项目实际情况出发,最后决定采用王工建议。
请用200字以内的文字说明基于Struts、Spring和Hibernate的轻量级框架与基于EJB重量级框架解决问题的侧重点有什么不同?
作为重量级框架,EJB框架强调高可伸缩性,适合于开发大型应用系统。在EJB体系结构中,一切与基础结构服务相关的问题和底层分配问题都由容器来处理。另外,EJB容器通过减少数据库访问次数以及分布式处理等方式提供了专门的系统性能解决方案,能够充分解决系统性能问题。
轻量级框架侧重于减少开发的复杂度,相应地它的处理能力便有所减弱(如事务功能弱、不具备分布式处理能力),比较适用于开发小型应用系统。采用轻量框架后,一方面因为采用基于POJOs的方法进行开发,使应用不依赖于任何容器,这可以提高开发调试效率;另一方面轻量级框架多数是开源项目,开源社区提供了良好的设计和许多快速构建工具以及大量现成可供参考的开源代码,这有利于项目的快速开发。轻量级框架的产生并非是对重量级框架的否定,可以说二者是互补的。轻量级框架旨在开发具有更强大,功能更完备的企业应用;而新的EJB版本则在努力简化J2EE,从而使EJB不仅是擅长处理大型应用系统,也能用于开发中小型系统,这也是EJB轻量化的一种努力。对于大型应用系统以及将来可能涉及到能力扩展的中小型应用系统而言,
采用结合使用轻量级框架和重量级框架也不失为一种较好的解决方案。
第3题:
试题三 (25 分)
阅读以下关于 Java 企业级应用系统开发架构选择方面的叙述,在答题纸上回答问题 1 至问题 3。
某软件公司承担了某中小型企业应用软件开发任务,进度要求紧迫。为了按时完成任务,选择合适的企业应用系统开发架构非常重要。项目组在进行方案论证时,项目组成员提出了两种开发思路。
(1)刘工建议采用 J2EE 5.0 和 EJB 3.0 进行开发。理由是 J2EE定义了标准的应用开发体系结构和部署环境,EJB 是 J2EE 的基础和核心。J2EE 5.0 主要目标是简化开发,相比 EJB 2.1,EJB 3.0 具有很多改进和提高。
(2)杜工建议采用 Struts,Spring 和 Hibernate 轻量级开源框架相结合的方式。理由是随着 Java开源项目阵营的发展壮大, 一些基于 POJOs (Plan Old Java Objects)的开源框架被广泛地引入到 Java 企业应用开发中来,与重量级的 EJB 框架相比,这些轻量级的框架有很多优点。 项目组仔细比较分析了两种方案的特点、优点和不足之处。认为杜工和刘工的建议都合理,但是从结合当前项目实际情况出发,最后决定采用杜工的建议。
【问题 1】 (6 分)
Java 企业应用框架一般被划分为三个层次,请用 150 字以内文字说明都有哪三个层次?功能分别是什么?
【问题 2】 (12 分)
请用 200 字以内的文字叙述 Struts,Spring 和 Hibernate 开源框架特点和结合方式。
【问题 3】 (7 分)
请用200字以内的文字说明基于Struts, Spring和Hibernate的轻量级框架与基于EJB的重量级框架解决问题的侧重点有什么不同?
第4题:
阅读以下关于Java企业级应用系统开发架构选择方面的叙述,在回答问题 1至问题3。
某软件公司承担了某中小型企业应用软件开发任务,进度要求紧迫。为了按时完成任务,选择合适的企业应用系统开发架构非常重要。项目组在进行方案论证时,项目组成员提出了两种开发思路。
(1)刘工建议采用J2EE 5.0和EJB 3.0进行开发。理由是J2EE定义了标准的应用开发体系结构和部署环境,EJB是J2EE的基础和核心。J2EE 5.0主要目标是简化开发,相比EJB 2.1,EJB 3.0具有很多改进和提高。
(2)杜工建议采用Struts,Spring和Hibernate轻量级开源框架相结合的方式。理由是随着Java开源项目阵营的发展壮大,一些基于POJOs (Plan Old Java Objects)的开源框架被广泛地引入到Java企业应用开发中来,与重量级的EJB框架相比,这些轻量级的框架有很多优点。
项目组仔细比较分析了两种方案的特点、优点和不足之处。认为杜工和刘工的建议都合理,但是从结合当前项目实际情况出发,最后决定采用杜工的建议。
Java企业应用框架一般被划分为三个层次,请用150字以内文字说明都有哪三个层次?功能分别是什么?
第5题:
A.JSP和Servlet的开发、EJB的开发、打包、运行服务器
B.HTML等静态资源的开发、Servlet的开发、会话Bean的开发、实体Bean的开发
C.应用组件的开发、把应用组件合成模块、把模块合成应用、应用部署
D.组件开发、合成应用、合成模块、部署
第6题:
J2EE
某软件公司承担了某中小型企业应用软件开发任务,进度要求紧迫。为了按时完成任务,选择合适的企业应用系统开发架构非常重要。项目组在进行方案论证时,项目组成员提出了两种开发思路。
①刘工建议采用J2EE5.0和EJB3.0进行开发。理由是J2EE定义了标准的应用开发体系结构和部署环境,EJB是J2EE的基础和核心。J2EE5.0的主要目标是简化开发,相比EJB2.1,EJB3.0具有很多改进和提高。
②杜工建议采用Struts、Spring和Hibernate轻量级开源框架相结合的方式。理由是随着Java开源项目阵营的发展壮大,一些基于POJO(PlanOldJavaObjects)的开源框架被广泛地引入到Java企业应用开发中来,与重量级的EJB框架相比,这些轻量级的框架有很多优点。
项目组仔细比较分析了两种方案的特点、优点和不足之处。认为杜工和刘工的建议都合理,但是从结合当前项目实际情况出发,最后决定采用杜工的建议。
请用200字以内的文字说明基于Struts、Spring和Hibernate的轻量级框架与基于EJB的重量级框架解决问题的侧重点有什么不同?
轻量级框架侧重于减少开发的复杂度,相应地,它的处理能力便有所减弱(如事务功能弱、不具备分布处理能力),比较适用于开发中小型企业应用。
采用轻量级框架后,一方面因为采用基于POJOs的方法进行开发,使应用不依赖于任何容器,这可以提高开发调试效率;另一方面轻量级框架多数是开源项目,开源社区提供了良好的设计和许多快速构建工具,以及大量现成可供参考的开源代码,这有利于项目的快速开发。
而作为重量级框架EJB则强调高可伸缩性,适合于开发大型企业应用。
在EJB体系结构中,一切与基础结构服务相关的问题和底层分配问题都由容器来处理。另外,EJB容器通过减少数据库访问次数,以及分布式处理等方式提供了专门的系统性能解决方案,能充分解决系统性能问题。
轻量级框架的产生并非是对重量级框架的否定,可以说二者是互补的。轻量级框架旨在开发更强大、功能更完备的企业应用;而新EJB3.0则在努力简化J2EE使EJB不仅是擅长处理大型企业系统,也利用开发中小型系统,这也是EJB轻量化的一种努力。对于大型企业应用及将来可能涉及能力扩展的中小型应用,采用结合使用轻量级框架和重量级框架相也不失为一种较好的解决方案。
作为重量级框架,EJB框架则强调高可伸缩性,适合于开发大型企业应用。在EJB体系结构中,一切与基础结构服务相关的问题和底层分配问题都由容器来处理。另外,EJB容器通过减少数据库访问次数,以及分布式处理等方式提供了专门的系统性能解决方案,能够充分解决系统性能问题。
轻量级框架侧重于减少开发的复杂度,相应地,它的处理能力便有所减弱(如事务功能弱、不具备分布式处理能力),比较适用于开发小型企业应用。采用轻量框架后,一方面因为采用基于POJOs的方法进行开发,使应用不依赖于任何容器,这可以提高开发调试效率;另一方面轻量级框架多数是开源项目,开源社区提供了良好的设计和许多快速构建工具,以及大量现成可供参考的开源代码,这有利于项目的快速开发。
第7题:
阅读以下关于Java企业级应用系统开发体系结构选择方面的叙述,在答题纸上回答问题1至问题3。
博学公司承担了某中小型企业应用软件开发任务,进度要求紧迫。为了按时完成任务,选择合适的企业应用系统开发体系结构非常重要。因此,首席架构师张博士召集了相关技术人员进行方案讨论,在进行方案论证时,项目组成员提出了两种开发思路。
(1)谢工建议采用J2EE和EJB进行开发。理由是J2EE定义了标准的应用开发体系结构和部署环境,EJB是J2EE的基础和核心。J2EE的主要目标是简化开发。
(2)王工建议采用Struts、Spring和Hibernate轻量级开源框架相结合的方式。理由是随着Java开源项目阵营的发展壮大,一些基于POJOs(PlanOldJavaObjects)的开源框架被广泛地引入到Java企业应用开发中来,与重量级的EJB框架相比,这些轻量级的框架有很多优点。
针对这两种思路,张博士仔细比较和分析了两种方案的特点、优点和不足之处。认为王工和谢工的建议都合理,但是,从结合当前项目实际情况出发,最后决定采用王工建议。
请用200字以内的文字叙述Struts、Spring和Hibernate开源框架特点和结合方式。
Struts框架+Spring框架+Hibernate框架实现了表现层、业务逻辑组件层和持久层的结合。
Struts是MVC模式的开源框架,主要用于企业应用中表示层的实现。借助于Struts,开发人员开源把主要精力集中在业务处理上,简化遵循MVC设计模式的Web应用开发工作,很好地实现代码重用,提高开发效率。Struts框架包括:
(1)模型。Struts中模型是一个Action类,开发者通过其实现商业逻辑,同时用户请求通过控制器向Action的转发过程是基于由struts-config.xml文件描述的配置信息的。
(2)视图。视图是由与控制器配合工作的一整套JSP定制标签库构成,利用它们可以快速建立应用系统的界面。
(3)控制器。本质上是一个Servlet,将客户端请求转发到相应的Action类。
(4)一些用来做XML文件解析的工具包。
Spring是业务组件层轻量级框架。Spring框架是一个基于IoC和面向方面编程的体系结构。用户可以通过Spring来利用POJOs编程,使用依赖注入(DependencyInjection,DI)解析POJO间的依赖性,然后使用面向方面编程将服务与它们相关联。采用依赖注入使得它可以很容易地实现Bean的装配,提供了简洁的AOP并据此实现事务管理等。
Spring的核心要点是:支持不绑定到特定J2EE服务的可重用业务和数据访问对象。这样的对象可以在不同的J2EE环境(Web或EJB.、独立应用程序、测试环境之间重用。Hibernate属于持久层框架。Hibernate是一个开源的O/RMapping框架,它对JDBC进行了非常轻量级的对象封装。可以在应用EJB的J2EE框架中取代CMP,完成数据持久化的重任。
第8题:
某软件公司承担了某大型企业应用系统集成任务,该企业随着信息化的进展,积累了许多异构的遗产信息系统,这些系统分别采用J2EE、.NET等技术进行开发,分布在不同的地理位置,采用不同的协议进行数据传输。企业要求集成后的系统能够实现功能整合,并在组织现有功能的基础上提供增值服务。为了按时完成任务,选择合适的企业应用集成方法和架构非常重要。项目组在讨论方案时,提出了两种集成思路。
①刘工建议采用传统的应用集成方法,将应用集成分为多个层次,并采用消息代理中间件连接遗产系统。
②王工建议采用基于SOA的方法进行应用集成,将现有遗产系统采用WebService的方式进行包装,暴露统一格式的接口,并采用企业服务总线(ESB)进行连接。
项目组仔细分析比较了两种方案的优点和不足后,认为刘工和王工的建议都合理,但是结合当前项目的实际情况,最后决定采用王工的建议。
王工的方案拟采用WebService作为基于SOA集成方法的实现技术。请根据该系统的实际情况,用300字以内的文字说明系统应该分为哪几个层次,并简要说明每个层次的功能和相关标准。
在采用WebService作为SOA的实现技术时,该系统应该至少分为6个层次:底层传输层、服务通信协议层、服务描述层、服务层、业务流程层和服务注册层。
①底层传输层主要负责消息的传输机制,HTTP、JMS和SMTP都可以作为WebService的消息传输协议,其中HTTP使用最广。
②服务通信协议层的主要功能是描述并定义服务之间进行消息传递所需的技术标准,常用的标准是SOAP协议,还有新出现的REST协议。
③服务描述层主要以一种统一的方式描述服务的接口与消息交换方式,相关的标准是WSDL。
④服务层的主要功能是将遗留系统进行包装,并通过发布的WSDL接口描述被定位和调用。
⑤业务流程层的主要功能是支持服务发现、服务调用和点到点的服务调用,并将业务流程从WebService的底层调用抽象出来。相关的标准是WS-BPEL(BPEL4WS)。
⑥服务注册层的主要功能是使得服务提供者能够通过WSDL发布服务定义,并支持服务请求者查找所需的服务信息。相关的标准是UDDI。
第9题:
阅读以下关于企业应用集成的叙述,在回答问题1至问题3。
某软件公司承担了某大型企业应用系统集成任务,该企业随着信息化的进展,积累了许多异构的遗产信息系统,这些系统分别采用J2EE、.NET等技术进行开发,分布在不同的地理位置,采用不同的协议进行数据传输。企业要求集成后的系统能够实现功能整合,并在组织现有功能的基础上提供增值服务。为了按时完成任务,选择合适的企业应用集成方法和架构非常重要。项目组在讨论方案时,提出了两种集成思路。
(1)刘工建议采用传统的应用集成方法,将应用集成分为多个层次,并采用消息代理中间件连接遗产系统。
(2)王工建议采用基于SOA的方法进行应用集成,将现有遗产系统采用Web Service的方式进行包装,暴露统一格式的接口,并采用企业服务总线(ESB)进行连接。
项目组仔细分析比较了两种方案的优点和不足后,认为刘工和王工的建议都合理,但是结合当前项目的实际情况,最后决定采用王工的建议。
请分析比较两种方案优点和不足,完成表1-1中的空白部分。
第10题:
阅读以下关于应用服务器的叙述,,在答题纸上回答问题1至问题3。 【说明】 某电子产品制造公司,几年前开发建设了企业网站系统,实现了企业宣传、产品介绍、客服以及售后服务等基本功能。该网站技术上采用了Web服务器、动态脚本语言PHP。随着市场销售渠道变化以及企业业务的急剧拓展,该公司急需建立完善的电子商务平台。 公司张工建议对原有网站系统进行扩展,增加新的功能(包括订单系统、支付系统、库存管理等),这样有利于降低成本、快速上线;而王工则认为原有网站系统在技术上存在先天不足,不能满足企业业务的快速发展,尤其是企业业务将服务全球,需要提供24小时不间断服务,系统在大负荷和长时间运行下的稳定性至关重要。建议采用应用服务器的Web开发方法,例如J2EE,为该企业重新开发新的电子商务平台。
【问题1】(7分) 王工认为原有网站在技术上存在先天不足,不能满足企业业务的快速发展,根据你 的理解,请用300字以内的文字说明原系统存在哪几个方面的不足。 【问题2】(8分) 请简要说明应用服务器的概念,并重点说明应用服务器如何来保障系统在大负荷和长时间运行下的稳定性以及可扩展性。 【问题3】(10分) J2EE平台采用了多层分布式应用程序模型,实现不同逻辑功能的应用程序被封装到不同的构件中,处于不同层次的构件可被分别部署到不同的机器中。请填写图4-1中(1)~(5)处的空白,完成J2EE的N层体系结构。图4-1 J2EE的N层体系结构示意图