Spring 是一个轻量级的控制反转(IOC)和面向切面(AOP)的容器框架,它由 Rod Johnson 创建,它是为了解决企业开发应用开发的复杂性而创建的。
Spring 使用基本的 JavaBean 来完成以前只可能由 EJB 完成的事情。然而,Spring 的用途不仅限于服务器端的开发。
从简单性、可测试性和松耦合的角度而言,任何 Java 应用都可以从 Spring 中受益。
Spring 的初衷:
1. JavaEE 开发更加简单。
2. 使用接口而不是使用类,更好的编程习惯,Spring 将使用接口的复杂度几乎降低到了零。
3. 为 JavaBean 提供了一个更好的应用配置框架。
4. 更多地强调面向对象的设计,而不是现行的技术如 JavaEE。
5. 尽量减少不必要的异常捕捉。
6. 使应用程序更加容易测试。
Spring 的目标:
1. 可以令人方便愉悦地使用 Spring。
2. 应用程序代码并不依赖于 SpringAPIs。
3. Spring 不和现有的解决方案竞争,而是致力于将它们融合在一起。
Spring 的基本组成:
1. 最完善的轻量级核心代码。
2. 通用的事务管理抽象层。
3. JDBC 抽象层。
4. 集成了 Toplink,Hibernate,JDO,and iBATIS SQL Maps。
5. AOP 功能。
6. 灵活的 MVC Web 应用框架。