J2EE框架
被考次数: 1次
被考频率: 低频率
答错率:    51%
知识难度:
考试要求: 熟悉     
知识路径:  > 电子商务系统程序设计基础  > 电子商务平台开发基础  > J2EE平台技术及其结构  > J2EE平台技术及其结构


本知识点历年真题试卷分布
>> 试题列表    
 

 
       框架(Framework)是一个提供了可重用的公共结构的半成品。它为我们构件新的应用提供了极大的方便。一方面给我们提供了可以直接使用的工具,同时给我们提供了可重用的设计。框架这个词最早出现在建筑领域,指的是在建造房屋前构建的建筑骨架。对应用程序来说,“框架”的意义也在于此,是应用程序的骨架。开发者可以在这个骨架上添加自己的东西,完成符合自己需要的应用系统。
       框架保证了我们程序结构风格统一,从企业的角度来说,降低了培训成本和软件的维护成本。框架在结构统一和创造力之间维持着一个平衡。框架和组件的意义是不同的。组件是构件应用程序的零件。而框架是一系列预装的,组合在一起的“零件”,而且还定义了“零件”间协同工作的规则。
       Struts框架
       Struts是一种基于Java技术的JSP Web开发框架,Web应用程序开发人员通过Struts框架即可充分利用面向对象设计、代码重用以及“一次编写、到处运行”的优点。Struts提供了一种创建Web应用程序的框架,对应用程序的显示、表示和数据的后台代码进行了抽象。
       Struts是对MVC(Model View Controller)设计模式的一种实现。MVC设计模式为构建可扩展、可重用的代码打下了坚实的基础。以MVC设计模式构造软件,可以使软件结构灵活、重用性好、扩展性好。
       MVC设计模式目的就是将模型(业务逻辑)和视图(页面展示)分离,使模型和视图可以独立修改,而不会影响到对方。在MVC中,M指的是Model(模型),表示程序处理业务逻辑的部分;V指的是View(视图),表示程序负责展示数据、获得用户输入的部分;C指的是Controller(控制器),负责从V接收用户输入,调用M,返回数据到V。我们可以看出,C在MVC起到“中介”的作用,从而保证M和V不会直接交互。
       在Struts中,ActionServlet起着一个控制器的作用。视图主要由JSP来控制页面输出。模型在Struts中,主要存在三种bean,分别是:Action、ActionForm、EJB或者Java Bean。Struts框架结构如下图所示。
       
       Struts框架结构图
       Spring框架
       Spring是轻量级的J2EE应用程序开源框架。它是为了解决企业应用开发的复杂性而创建的。Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。并且Spring的用途不仅限于服务器端的开发。从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。
       Spring的核心是个轻量级容器(container),是实现了IoC(Inversion of Control)模式的容器;Spring的目标是实现一个全方位的整合框架,在Spring框架下实现多个子框架的组合,这些子框架之间彼此可以独立,也可以使用其他的框架方案加以替代。
       Spring支持AOP(Aspect-Oriented Programming),Spring也提供MVC Web框架的解决方案,并且可以将MVC Web框架与Spring结合。Spring还提供其他方面的整合,如JDBC(Java Data Base Connectivity,Java数据库连接)、事务处理等。Spring框架结构如下图所示。
       
       Spring框架
       Spring的核心概念是IoC(Inversion of Control),IoC的抽象概念是“依赖关系的转移”,中文可以译为“控制反转”。IoC表现在:高层模块不应该依赖低层模块,而是模块都必须依赖于抽象;实现必须依赖抽象,而不是抽象依赖实现;应用程序不应依赖于容器,而是容器服务于应用程序。
       IoC是由容器控制程序之间的关系,而非由程序代码直接操控。控制权由应用代码转到了外部容器。控制权的转移,就是所谓的反转。使用IoC,对象是被动的接受依赖类,容器在实例化的时候主动将它的依赖类注入给它。
       Spring所采用的是依赖注入(Dependency Injection)。依赖注入的意义是:保留抽象接口,让组件依赖于抽象接口,当组件要与其他实际的对象发生依赖关系时,通过抽象接口来注入依赖的实际对象。依赖注入的目标是为了提升组件重用的几率,并为系统搭建一个灵活和可扩展的平台。
       另外,Spring提供一种无侵入式的高扩展性框架,不需要代码中涉及Spring专有类,即可纳入Spring容器进行管理。org.springframework.beans包中包括了这些核心组件的实现类。
       Spring框架另一个重要方面是对AOP提供了一种优秀的实现。AOP(Aspect Oriented Programming),可翻译为“面向切面编程”。AOP是针对业务处理过程中的切面进行提取,它所面对的是处理过程中的某个步骤或阶段,以获得逻辑过程中各部分之间低耦合性的隔离效果。AOP组件与应用代码无关,应用代码可以脱离AOP组件独立编译。Spring中的AOP通过运行期动态代理模式实现。
       总结起来Spring框架的主要功能包括:
       ①基于Java Beans的配置管理,减少各组件间相互依赖。
       ②一个核心的,全局适用的bean工厂。
       ③一个一般抽象化的层面来管理数据库间的数据处理。
       ④建立在框架内对Java数据处理API和单独的JDBC数据源的一般性策略。
       ⑤Web应用中的MVC框架,基于核心的Spring功能,支持多种产生视图的技术。
       ⑥大量的AOP框架以提供诸如数据处理管理的服务。
       Hibernate框架
       Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以使用对象编程思维来操纵数据库。
       “对象/关系”映射(O/R Mapping)是一门非常实用的工程技术,它实现了Java应用中的对象到关系数据库中的表的持久化。使用元数据(meta data)描述了对象与数据库间的映射。Hibernate是非常优秀、成熟的O/R Mapping框架,它提供了强大的对象和关系数据库映射以及查询功能。Hibernate体系结构如下图所示。
       
       Hibernate体系结构
       Hibernate的核心接口一共有6个,分别为:Session、SessionFactory、Transaction、Query、Criteria和Configuration。这6个核心接口在任何开发中都会用到。通过这些接口,不仅可以对持久化对象进行存取,还能够进行事务控制。下面对这6个核心接口分别加以介绍。
       (1)Session接口。Session接口负责执行被持久化对象的增删改查操作(增删改查的任务是完成与数据库的交流,包含了很多常见的SQL语句)。但需要注意的是Session对象是非线程安全的。
       (2)SessionFactory接口。SessionFactory接口负责初始化Hibernate。它充当数据存储源的代理,并负责创建Session对象。这里用到了工厂模式。需要注意的是SessionFactory并不是轻量级的,因为一般情况下,一个项目通常只需要一个SessionFactory就够,当需要操作多个数据库时,可以为每个数据库指定一个SessionFactory。
       (3)Configuration接口。Configuration接口负责配置并启动Hibernate,创建SessionFactory对象。在Hibernate的启动的过程中,Configuration类的实例首先定位映射文档位置,读取配置,然后创建SessionFactory对象。
       (4)Transaction接口。Transaction接口负责事务相关的操作。它是可选的,开发人员也可以设计编写自己的底层事务处理代码。
       (5)Query和Criteria接口。Query和Criteria接口负责执行各种数据库查询。它可以使用HQL(Hibernate Query Language,官方推荐的Hibernate检索方式)或SQL语句两种表达方式。
 

更多复习资料
请登录电脑版软考在线 www.rkpass.cn

京B2-20210865 | 京ICP备2020040059号-5
京公网安备 11010502032051号 | 营业执照
 Copyright ©2000-2025 All Rights Reserved
软考在线版权所有