面试官要我介绍一下spring,我该如何比较全面的回答

如题所述

第1个回答  2012-03-11
sping 是一个框架开发的容器,
它是为了可以良好的控制程序而开发的;
由 7 个定义良好的模块组成。Spring 模块构建在核心容器之上,核心容器定义了创建、配置和管理 bean 的方式;
☆ 核心容器:核心容器提供 Spring 框架的基本功能。核心容器的主要组件是 BeanFactory,它是工厂模式的实现。BeanFactory 使用控制反转 (IOC) 模式将应用程序的配置和依赖性规范与实际的应用程序代码分开。
  
  ☆ Spring 上下文:Spring 上下文是一个配置文件,向 Spring 框架提供上下文信息。Spring 上下文包括企业服务,例如 JNDI、EJB、电子邮件、国际化、校验和调度功能。
  
  ☆ Spring AOP:通过配置管理特性,Spring AOP 模块直接将面向方面的编程功能集成到了 Spring 框架中。所以,可以很容易地使 Spring 框架管理的任何对象支持 AOP。Spring AOP 模块为基于 Spring 的应用程序中的对象提供了事务管理服务。通过使用 Spring AOP,不用依赖 EJB 组件,就可以将声明性事务管理集成到应用程序中。
  
  ☆ Spring DAO:JDBC DAO 抽象层提供了有意义的异常层次结构,可用该结构来管理异常处理和不同数据库供应商抛出的错误消息。异常层次结构简化了错误处理,并且极大地降低了需要编写的异常代码数量(例如打开和关闭连接)。Spring DAO 的面向 JDBC 的异常遵从通用的 DAO 异常层次结构。
  
  ☆ Spring ORM:Spring 框架插入了若干个 ORM 框架,从而提供了 ORM 的对象关系工具,其中包括 JDO、Hibernate 和 iBatis SQL Map。所有这些都遵从 Spring 的通用事务和 DAO 异常层次结构。
  
  ☆ Spring Web 模块:Web 上下文模块建立在应用程序上下文模块之上,为基于 Web 的应用程序提供了上下文。所以,Spring 框架支持与 Jakarta Struts 的集成。Web 模块还简化了处理多部分请求以及将请求参数绑定到域对象的工作。
  
  ☆ Spring MVC 框架:MVC 框架是一个全功能的构建 Web 应用程序的 MVC 实现。通过策略接口,MVC 框架变成为高度可配置的,MVC 容纳了大量视图技术,其中包括 JSP、Velocity、Tiles、iText 和 POI。
  
  Spring 框架的功能可以用在任何 J2EE 服务器中,大多数功能也适用于不受管理的环境。Spring 的核心要点是:支持不绑定到特定 J2EE 服务的可重用业务和数据访问对象。毫无疑问,这样的对象可以在不同 J2EE 环境 (Web 或 EJB)、独立应用程序、测试环境之间重用。
  
  IOC 和 AOP
  
  控制反转模式(也称作依赖性介入)的基本概念是:不创建对象,但是描述创建它们的方式。在代码中不直接与对象和服务连接,但在配置文件中描述哪一个组件需要哪一项服务。容器 (在 Spring 框架中是 IOC 容器) 负责将这些联系在一起。
  
  在典型的 IOC 场景中,容器创建了所有对象,并设置必要的属性将它们连接在一起,决定什么时间调用方法。下表列出了 IOC 的一个实现模式。

面试官:"说说你对Spring的理解"
Spring就是一个大工厂,可以将所有对象的创建和依赖关系的维护,交给Spring管理。AOP编程的支持 Spring提供面向切面编程,可以方便的实现对程序进行权限拦截、运行监控等功能。声明式事务的支持 只需要通过配置就可以完成对事务的管理,而无需手动编程。方便程序的测试 Spring对Junit4支持,可以通过注解方便的测...

面试官要我介绍一下spring,我该如何比较全面的回答
☆ Spring 上下文:Spring 上下文是一个配置文件,向 Spring 框架提供上下文信息。Spring 上下文包括企业服务,例如 JNDI、EJB、电子邮件、国际化、校验和调度功能。☆ Spring AOP:通过配置管理特性,Spring AOP 模块直接将面向方面的编程功能集成到了 Spring 框架中。所以,可以很容易地使 Spring 框架管理的...

如果一个面试官问你什么是Spring,它有什么用,怎么回答才是最好的?
简单来说,Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。◆轻量——从大小与开销两方面而言Spring都是轻量的。完整的Spring框架可以在一个大小只有1MB多的JAR文件里发布。并且Spring所需的处理开销也是微不足道的。此外,Spring是非侵入式的:典型地,Spring应用中的对象不依赖于Spring...

面试的时候怎样回答技术面试题
如果问题是「 Spring 是什么,怎样理解的」。很多人就会直接回答「Ioc 和 Aop嘛」这样说不能算错,但我个人认为从一个更宏观的方式先入手,再具体介绍对于 Spring 你深入了解的一个或者多个方面,这样感觉更好一些。发展到今天,Spring 并不仅仅只有Ioc 和Aop,而是一个包含一系列功能的XX,像快速开发...

面试官问我Spring在MVC中起的是什么作用 Struts2起的是什么作用
Spring即使一个AOP框架,也是一IOC容器。 Spring 最好的地方是它有助于您替换对象。有了 Spring,只要用 JavaBean 属性和配置文件加入依赖性(协作对象)。然后可以很容易地在需要时替换具有类似接口的协作对象。这样就差不多了。2、依旧struts2是什么,Struts 2框架本身大致可以分为3个部分:核心控制器F...

spring的15个经典面试题
Spring是一种轻量级框架,旨在提高开发人员的开发效率以及系统的可维护性。我们一般说的Spring框架就是Spring Framework,它是很多模块的集合,使用这些模块可以很方便地协助我们进行开发。这些模块是核心容器、数据访问\/集成、Web、AOP(面向切面编程)、工具、消息和测试模块。比如Core Container中的Core组件是...

Spring 是如何解决循环依赖的?写得太好了
做Java 开发的,一般都绕不开 Spring,那么面试中肯定会被问到 Spring 的相关内容,而循环依赖又是 Spring 中的高频面试题。 这不前段时间,我的一朋友去面试,就被问到了循环依赖,结果他还在上面还小磕了一下,他们聊天过程如下 面试官:说下什么是循环依赖 朋友:两个或则两个以上的对象互相依赖对方,最终形成 闭环...

spring源码面试题(面试spring源码看过吗怎么回答)
一个框架的源码也是最大的知识库,源码是一层一层嵌套的,光靠文字说明会比较难以理解,最好是在IDE环境下跟着一步一步跟着点下去。 如果要学习源码,最合适的就是Spring,理由如下: 面试常问Spring、SpringBoot、SpringCloud、SpringMVC面试题解析 针对Spring、SpringBoot、SpringCloud、SpringMVC,笔者这边整理了几份学习...

面试官问:Spring在多线程环境下如何确保事务一致性?
具体实现中,我们需确保事务资源在不同线程间正确传递,比如通过复制事务资源到其他线程的ThreadLocalMap中,以便在需要执行事务操作的线程中获取和使用这些资源。通过这种方式,我们可以实现跨线程间的事务一致性。总结而言,解决Spring在多线程环境下事务一致性问题的关键在于:1. 异步执行任务,确保任务并行...

面试英语技巧 让你轻松应付面试官的苛刻问题
面试的英文需要运用一系列比较专业的词汇,并且善用几种时态,如说明过去的工作要用过去时,以前取得的成绩要用过去完成时等等。这里我们就讲讲什么时候该说什么。 当你走进雇主的办公室,先介绍自己,握手,微笑很重要。此后第一句话往往是打开局面的,通常面试人员会问: How are you today? Did you have any trouble ...

相似回答
大家正在搜