什么是Spring?
- 开源的设计层面框架。为解决企业应用开发的复杂性而生。
- Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。
- 解决业务逻辑层和其他各层的松(解)耦合问题。
- 整个系统应用思想都是面向接口编程。
- 全面的模块化的;有分层的体系结构。
- 可选择性的拼接使用各个层。
- 可以使javaEE更加易用,并通过接口(而不是类)促进好的编程习惯。
- 减少编程代价几乎为零;Spring构建的应用程序易于测试。
- 可应用于任何Java应用
综上,Spring可以将许多模块和简单的组件配置,拼接组合成一个复杂的应用。
什么叫轻量级框架?
过去常听人说,那什么什么是轻量级的,搞得一副高大上的样子,轻量级到底是什么呢?
在此就以Spring为例解释一下轻量一词。
- 从大小方面而言:完整的Spring框架可以在一个大小只有1MB多的JAR文件里发布。
- 从开销方面而言:Spring所需的处理开销是微不足道的。
- 另外,Spring还是非侵入式的。
Spring中有哪些模块?
- 核心包:beans、core、context、expression
- 切面编程:aop
- 整合jdbc:jdbc
- 整合ORM框架:orm
- 事务控制:tx
- web层技术:web
- 整合测试:text
- …
Spring中有哪些优点?
- IOC:组件之间的解耦
- AOP:切面编程可以将应用业务做统一或特定的功能增强,能实现应用业务与增强逻辑的解耦
- 容器与事件:管理应用中心使用的组件Bean、托管Bean的生命周期、事件与监听的驱动机制
- Web、事务控制、测试、与其他技术的整合