资源预览内容
第1页 / 共25页
第2页 / 共25页
第3页 / 共25页
第4页 / 共25页
第5页 / 共25页
第6页 / 共25页
第7页 / 共25页
第8页 / 共25页
第9页 / 共25页
第10页 / 共25页
亲,该文档总共25页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
1、不同版本的Spring Framework 有哪些主要功能?versiwFea tuneSpilng Z.5发齐于ZOOF年乜这是常Y査持注解的版柜Spiling 3.0堂帝予2009年它完全剎用了 J3W35卬的改遊.并対JEE据供了亶持。肿帕4rQ发布于轴時年这是第f完全壹持WAS的髓本*2、什么是 Spring Framework?Spring是一个开源应用框架,旨在降低应用程序开发的复杂度。它是轻量 级、松散耦合的。它具有分层体系结构,允许用户选择组件,同时还为J2EE 应用程序开发提供了一个有凝聚力的框架。它可以集成其他框架,如 St rue ts、Hiberna te、EJB等,所以又称为框架的框架。3、列举 Spring Framework 的优点。由于Spring Frameworks的分层架构,用户可以自由选择自己需要的组件。Spring Framework 支持 POJO(Plain Old Java Objee t) 编程,从而具备 持续集成和可测试性。由于依赖注入和控制反转, JDBC得以简化。它是开 源免费的。4、Spring Framework 有哪些不同的功能?轻量级-Spring在代码量和透明度方面都很轻便。 IOC -控制反转 AOP -面向切面编程可以将应用业务逻辑和系统服务分离,以实现高内聚。容器-Spring负责创建和管理对象(Bean )的生命周期和配置。 MVC -对web应用提供了高度可配置性,其他框架的集成也十分方便。事务管理-提供了用于事务管理的通用抽象层。Spring的事务支持也可 用于容器较少的环境。 JDBC异常-Spring的JDBC抽象层提供了一个异常层次结构,简化了错 误处理策略。5、Spring Framework中有多少个模块,它们分别是什么?Spring核心容器-该层基本上是Spring Framework的核心。它包含 以下模块: Spring Core Spring Bean SpEL (Spring Expression Language) Spring Context数据访问/集成-该层提供与数据库交互的支持。它包含以下模块: JDBC (Java DataBase Connectivity) ORM (Object Relational Mapping) OXM (Object XML Mappers) JMS (Java Messaging Service) TransactionWeb -该层提供了创建Web应用程序的支持。它包含以下模块:Web Web - Servle t Web - Socke t Web - Por tletAOP该层支持面向切面编程Instrumentation该层为类检测和类加载器实现提供支持。Tes t该层为使用JUnit和TestNG进行测试提供支持。几个杂项模块:Messaging -该模块为STOMP提供支持。它还支持注解编程模型,该模 型用于从WebSocket客户端路由和处理STOMP消息。Aspec ts -该模块为与Aspec tj的集成提供支持。6、什么是Spring配置文件?Spring配置文件是XML文件。该文件主要包含类信息。它描述了这些类 是如何配置以及相互引入的。但是,XML配置文件冗长且更加干净。如果没 有正确规划和编写,那么在大项目中管理变得非常困难。7、Spring应用程序有哪些不同组件?Spring应用一般有以下组件:接口 -定义功能。 Bean类-它包含属性,sett er和getter方法,函数等。 Spring面向切面编程(AOP)-提供面向切面编程的功能。 Bean配置文件-包含类的信息以及如何配置它们。用户程序-它使用接口。8、使用Spring有哪些方式?使用Spring有以下方式:作为一个成熟的Spring Web应用程序。作为第三方 Web框架,使用Spring Frameworks 中间层。用于远程使用。 作为企业级 Java Bean,它可以包装现有的 POJO ( Plain Old JavaObjects )。9、什么是Spring IOC容器?Spring框架的核心是Spring容器。容器创建对象,将它们装配在一起, 配置它们并管理它们的完整生命周期。Spring容器使用依赖注入来管理组 成应用程序的组件。容器通过读取提供的配置元数据来接收对象进行实例 化,配置和组装的指令。该元数据可以通过XML,Java注解或Java代码提供。Java POJO ClassesMetaDataSpring ContainerFinal ResultReady To UseApplication10、什么是依赖注入?在依赖注入中,您不必创建对象,但必须描述如何创建它们。您不是直接在 代码中将组件和服务连接在一起,而是描述配置文件中哪些组件需要哪些 服务。由IoC容器将它们装配在一起。11、可以通过多少种方式完成依赖注入?通常,依赖注入可以通过三种方式完成,即:构造函数注入 setter 注入接口注入 在Spring Framework 中,仅使用构造函数和 setter注入。12、区分构造函数注入和 setter注入。构駆1数注人setter注入浚脊即分注入有部分注入不吉覆盈逊血厲性会覆羞s&Her厲性任意俸夜都發创建E个新实例任意修改不会创建一个隸尖俄适用于惯沮狼多属性适用于设宦少量属性13、spring中有多少种I0C容器?BeanFactory - BeanFactory 就像一个包含 bean集合的工厂类。它会在 客户端要求时实例化 bean。ApplicationContext - ApplicationContext 接口扩展了 BeanFac tory 接口。它在 BeanFac tory 基础上提供了一些额 外的功能。14、区分 Bean Factory 和 ApplicationContext。ApplicationGcnt-ext它使用懒减它使胖时加载|它使用舞式提供资源象它自己创建卞喑理资源对象不支持国師化支持園际化不支持墨于依颤豹注鮮支祷基于依娠的注解15、列举IoC的一些好处。IoC的一些好处是:它将最小化应用程序中的代码量。它将使您的应用程序易于测试,因为它不需要单元测试用例中的任何单 例或JNDI查找机制。它以最小的影响和最少的侵入机制促进松耦合。它支持即时的实例化和延迟加载服务。16、Spring IoC的实现机制。Spring中的IoC的实现原理就是工厂模式加反射机制。示例:interface Fruit public abstract vDid psT();Jclass Apple imiplements Fruit public void eat()System out printingAppLe);)class Orange implementsi Fruit public voidSy stem oirt 卩1:111:丄11(幻;class Factory public static Fruit ge11nstainceCString ClssNdme) Fruit f=null;try f=(Fpiuit)Class+forNiin(ClassNai!nA)+ ne,wT n$tanc:p( ) jcatch (Exceptian e)-(pxpri int5rackTrap(); r已turn f;class Client public stmt让 void main(stringJ a) ruit f=Fctory.getInstanciu.github.dunwu.sprinrApple); if(f!-null)17、什么是 spring bean ?它们是构成用户应用程序主干的对象。 Bean 由Spring IoC 容器管理。它们由Spring IoC容器实例化,配置,装配和管理。Bean是基于用户提供给容器的配置元数据创建。18、spring提供了哪些配置方式?基于xml配置bean所需的依赖项和服务在 XML格式的配置文件中指定。 这些配置文件通常包含许多bean定义和特定于应用程序的配置选项。它们通常以bean标签开头。例如: proply n基于注解配置 您可以通过在相关的类,方法或字段声明上使用注解,将 bean配置为组件类本身,而不是使用XML来描述bean装配。默认情况下,Spring容器中未打开注解装配。因此,您需要在使用它之前在 Spring 配置文件中启用它。例如:f beans 1 - barii definitiozns go here 基于Java API配置Spring的Java配置是通过使用Bean 和 Configuration来实现。1) Bean 注解扮演与bean/元素相同的角色。(2) Configura tion类允许通过简单地调用同一个类中的其他Bean 方法来定义bean间依赖关系。例如:Configurationpublic class studeratcon-Fig public StudenlBean mStydentC) re+u rn npw耳t中日日*吕门0 i19、spring 支持集中 bean scope ?Spring bean 支持 5 种 scope :1. Single ton - 每个Spring IoC容器仅有一个单实例。2. Pro tot ype -每次请求都会产生一个新的实例。3. Request -每一次HTTP请求都会产生一个新的实例,并且该bean仅在当前HTTP请求内有效。4. Session -每一次HTTP请求都会产生一个新的 bean,同时该 bean 仅在当前HTTP session 内有效。5. Global-session -类似于标准的 HTTP Session 作用域,不过它仅仅在基于portlet 的 web应用中才有意义。Portlet 规范定义了全局 Session的概念,它被所有构成某个por tlet web应用的各种不同的portlet所共享。在globalsession 作用域中定义的bean被限定于全局 portlet Session 的生命周期范围内。如果你在 web中使用 global session作用域来标识bean,那么web会自动当成session类型来使用。 仅当
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号