简单的说,Spring是一个 轻量级 的 IoC 和 AOP 容器框架。它概括出了Spring的功能。下面把这个描述分解开来。
@轻量级 —— 整个Spring框架可以打成一个1MB多一点的JAR包,并且它的处理开支也非常小。更重要的是,Spring是非侵
入式的:基于Spring开发的系统中的对象一般不依赖于Spring的类。
@IoC —— Spring提倡使用反向控制(IoC)来实现松耦合。使用IoC,对象是被动接收依赖类而不是自己主动去找。对象
不是从容器中查找它的依赖类,而是容器在实例化对象的时候主动将它的依赖类注入给它。
@AOP —— Spring对面向切面(AOP)编程提供了强大支持,通过将业务逻辑从系统服务(如监控和事务管理)中分离出
来,实现了内聚开发。系统对象只做它们该做的——业务逻辑,它们不负责不关心其它系统问题(如日志和事
务支持)。
@容器 —— Spring是一个容器,是因为它包含并且管理系统对象的生命周期和配置。你可以通过配置来设定你的Bean是
单一实例,还是每次请求产生一个实例,并且设定它们之间的关联关系。Spring有别于传统的重量级EJB容器
这些容器通常很大,很笨重。
@框架 —— Spring实现了使用简单的组件配置组合成一个复杂的系统。在Spring中,系统中的对象是通过XML文件配置组
合起来的。并且Spring提供了很多基础功能(事务管理、持久层集成等),这使开发人员能够专注于开发应用
逻辑。
所有Spring的这些特性使你的代码更加清晰,更容易管理,更容易测试。
分享到:
相关推荐
什么是控制反转/依赖注入? 11 依赖注入的三种实现形式 12 BeanFactory 14 BeanFactory管理Bean(组件)的生命周期 15 Bean的定义 16 Bean的之前初始化 19 Bean的准备就绪(Ready)状态 21 Bean的销毁 21 ...
我们为什么采用Spring技术栈?
Spring AOP 是什么?你都拿它做什么?
##### 1.1 Spring是什么? Spring是一款主流的Java EE轻量级开源框架,由“Spring之父”Rod Johnson提出并创立。Spring的主要目标是简化Java企业级应用的开发难度和开发周期。Spring不仅仅适用于服务器端开发,它的...
1. **Spring是什么?** Spring是一个开源的Java平台,它是一个容器和框架的集合。作为一个容器,Spring负责管理和初始化应用程序中的对象,即所谓的Bean。作为一个框架,Spring提供了多种功能模块,包括但不限于...
- **Spring是什么?** - Spring是一个轻量级的开源框架,其核心功能是依赖注入(Dependency Injection, DI)和面向切面编程(Aspect-Oriented Programming, AOP)。Spring框架可以帮助开发者构建易于测试、易于维护、...
2. 什么是IoC(控制反转)和DI(依赖注入)? IoC是Spring的核心,通过反转对象的创建和管理权,将对象的依赖关系交由容器来管理。DI则是IoC的具体实现,通过构造函数、setter方法或属性注解等方式,将依赖对象注入...
1. **什么是Spring框架?** Spring是一个开源的Java平台,它为构建企业级应用提供了全面的框架支持,包括依赖注入、面向切面编程(AOP)、数据访问、事务管理等。 2. **依赖注入(DI)是什么?** 依赖注入是一种...
Spring 是什么? Spring 是一个轻量级的 IoC 和 AOP 容器框架。是为 Java 应用程序提供基础性服务的框架,目的是简化应用程序的开发主要由以下几个模块组成:Spring Core:核心类库,提供 IOC 服务;Spring Context...
2. Spring是什么? Spring是一个轻量级的框架,它不强求特定的编程模型或技术栈。它的核心是IoC(Inversion of Control)容器,这个容器负责管理对象的生命周期和对象之间的依赖关系。Spring还提供了大量可选模块,...
#### 1.1 Spring 是什么? Spring 是一个用于构建 Java SE/EE 应用的分层的、全栈式的轻量级开源框架,它以 IOC(控制反转)和 AOP(面向切面编程)作为其核心设计理念。Spring 提供了丰富的功能模块,包括展现层的...
* 什么是MyBatis?MyBatis是一个基于Java的持久层框架,提供了数据库交互的解决方案。 * MyBatis的优点是什么?灵活、可扩展、支持多种数据库、高效、易于使用等。 * MyBatis框架的缺点是什么?学习成本高、配置复杂...
1.2. 什么是Hibernate的并发机制?怎么处理并发问题? 2 1.3. Hibernate自带的分页机制是什么?如果不使用Hibernate自带的分页,则采用什么方式分页? 3 1.4. hibernate的对象的三种持久化状态,并给出解释? 3 1.5....
**什么是Spring?** Spring是一个开源的、全面的Java/JEE应用程序框架,由Rod Johnson在其著作《Expert One-on-One J2EE Design and Development》中首次提出。它提供了一个容器(ApplicationContext),用于管理...
3. **什么是Spring的AOP?** - 介绍AOP的基本概念,包括切点、通知、切面等。 4. **如何配置Spring事务管理?** - 分析编程式事务管理和声明式事务管理的优缺点,给出具体配置示例。 5. **Spring MVC的工作流程是...
1. Spring是什么?Spring是一个轻量级的JavaEE框架,提供了一个完整的应用程序开发解决方案。 2. Spring的特点:轻量级、灵活、可扩展、支持AOP、支持IoC等。 3. Spring的应用场景:Web应用程序、企业应用程序、移动...
4. **配置Spring**:在Spring项目中,可以右键点击项目,选择"Spring" -> "Generate Spring Beans from XML",Eclipse会自动生成所需的配置文件(如`applicationContext.xml`)。也可以手动编辑这些XML配置文件,...
Spring 3.0是Spring框架的一个重要版本,它在2009年发布,为Java开发者带来了许多新特性和改进。这个版本标志着Spring框架在企业级应用开发中的进一步成熟,加强了对Java EE 6的支持,并引入了许多现代化的开发实践...