zoukankan      html  css  js  c++  java
  • 8.秋招复习简单整理之Spring面试一般问题

    1.不同版本的Spring Framework有哪些主要功能?

    2.什么是Spring Framework?

    Spring是一个轻量级的IOC和AOP容器框架,是为Java应用程序提供基础性服务的一套框架,目的是用于简化企业应用程序的开发,它使得开发者只需要关心业务需求。常见的配置方式有三种:基于注解的配置、基于XML的配置,基于java的配置。

    3.Spring框架有哪些优点?请谈谈你的看法。

    容器。Spring框架是一个容器,能管理项目中的所有对象。

    IOC(控制反转)。Spring将创建对象的方式反转给了程序,简化了开发,降低了代码的耦合性和侵入性。(耦合性也称块间联系。指软件系统结构中各模块间相互联系紧密程度的一种度量。模块之间联系越紧密,其耦合性就越强,模块的独立性则越差。模块间耦合高低取决于模块间接口的复杂性、调用的方式及传递的信息。)

    AOP(切面编程)。面向切面编程,简言之,就是将纵向重复的代码横向抽取出来,Spring框架应用了面向切面的思想,主要体现在为容器中管理的对象生成动态代理对象。

    方便对程序进行声明式事务管理,我们只需要通过配置即可完成事务管理。

    方便与其它框架进行整合,Spring可以集成其他框架,如Structs、Hibernate、Mybatis等。

    4.Spring Framework有哪些不同的功能?

    轻量级-Spring在代码量和透明度方面都很轻便;

    IOC-控制反转;

    DI-依赖注入;需要有IOC环境,在Spring创建Bean对象时,动态的将依赖对象注入到Bean对象中去,依赖注入最大的好处就是解耦合;

    AOP-面向切面编程可以将应用业务逻辑和系统服务分离,以实现高内聚;(内聚性又称块内联系。指模块的功能强度的度量,即一个模块内部各个元素彼此结合的紧密程度的度量。若一个模块内各元素(语名之间、程序段之间)联系的越紧密,则它的内聚性就越高。)

    容器-Spring负责创建和管理对象的生命周期和配置;

    MVC-对web应用提供了高度可配置性,其他框架的集成也十分方便;

    事务管理-提供了用于事务管理的通用抽象层。Spring的事务支持也可用于容器较少的环境;

    JDBC异常-Spring的JDBC抽象层提供了一个异常层次结构,简化了错误处理策略。

    5.Spring Framework中有多少个模块,它们分别是什么?

    1)Spring核心容器,Core Container基本上是Spring Framework的核心。它包含以下模块:

    Spring Core

    Spring Bean

    Spring Expression Language

    Spring Context

    2)数据访问/集成,Data Access/Integration,该层提供与数据库交互的支持,包含以下模块:

    JDBC(Java DataBase Connectivity)

    ORM(Object Relational Mapping)

    OXM(Object XML Mappers)

    JMS(Java Messageing Service)

    Transaction

    3)Web,该层提供了创建Web应用程序的支持。它包含以下模块:

    Web

    Web-Servlet

    Web-Socket

    Web-Portlet

    4)AOP-该层支持面向切面编程

    5)Instrumentation-该层为类检测和类加载器实现提供支持。

    6)Test - 该层为使用JUnit和Test NG进行测试提供支持。

    7)Messaging - 该模块为STOMP提供支持,它还支持注解编程模型,该模型用于从WebSocket客户端路由和处理STOMP消息。

    8)Aspects - 该模块为与AspectJ的集成提供支持。

    Spring Core:核心类库,提供IOC服务;

    Spring Context:提供框架式的Bean访问方式,以及企业级功能(JNDI、定时任务等);

    Spring AOP:AOP服务;

    Spring DAO:对JDBC的抽象,简化了数据访问异常的处理;

    Spring ORM:对现有的ORM框架的支持;

    Spring Web:提供了基本的面向Web的综合特性,例如多方文件上传;

    Spring MVC:提供面向Web应用的Model-View-Controller实现。

  • 相关阅读:
    第6章4节《MonkeyRunner源代码剖析》Monkey原理分析-事件源-事件源概览-翻译命令字串
    Android RecyclerView And CardView
    openstack配置增加
    Failed to allocate the network(s), not rescheduling
    openstack 网络
    python
    云安全
    Python
    ERROR (ClientException): Unexpected API Error
    cocos2d-x 场景切换
  • 原文地址:https://www.cnblogs.com/wenbinshen/p/11184081.html
Copyright © 2011-2022 走看看