Spring简介
官网地址:https://spring.io/
一、Spring旗下的众多项目:
Projects:
From configuration to security, web apps to big data—whatever the infrastructure needs of your application may be, there is a Spring Project to help you build it. Start small and use just what you need—Spring is modular by design.
链接地址:https://spring.io/projects
spring百度介绍:Spring框架是由于软件开发的复杂性而创建的。Spring使用的是基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅仅限于服务器端的开发。从简单性、可测试性和松耦合性角度而言,绝大部分Java应用都可以从Spring中受益。
二、Spring项目中的基础框架
Spring Framework:Spring 的基础框架,可以视为 Spring 基础设施,基本上任何其他 Spring 项目都是以Spring Framework 为基础的1、Spring Framework优良特性
- 轻量级:Spring 在大小和透明性方面绝对属于轻量级的。使用 Spring Framework 开发应用程序时,Spring 对应用程序本身的结构影响非常小。对领域模型可以做到零污染;对功能性组件也只需要使用几个简单的注解进行标记,完全不会破坏原有结构,反而能将组件结构进一步简化。这就使得基于 Spring Framework 开发应用程序时结构清晰、简洁优雅。
- 控制反转:IOC——Inversion of Control 将对象的创建交给了spring,简化了开发,把自己创建资源、向环境索取资源变成环境将资源准备好,降低了代码之间的耦合性和侵入性,翻转资源获取方向。
- 面向切面编程(AOP):Spring 支持面向切面编程,AOP——Aspect Oriented Programming,在不修改源代码的基础上增强代码功能。
- 抽取重复代码:将方法内部重复的代码抽取出来
- 代码增强:我使用抽取出来的代码套用到某个独立功能上,就对这个独立功能进行了增强
- 方便集成各种优秀的框架,其内部提供了对各种优秀框架如(struts2、hibernate、mybatis、quartz、jpa)等的直接支持。
- 容器:Spring IOC 是一个容器,因为它包含并且管理组件对象的生命周期。组件享受到了容器化的管理,替程序员屏蔽了组件创建过程中的大量细节,极大的降低了使用门槛,大幅度提高了开发效率。
- 组件化:Spring 实现了使用简单的组件配置组合成一个复杂的应用。在 Spring 中可以使用 XML 和 Java 注解组合这些对象。这使得我们可以基于一个个功能明确、边界清晰的组件有条不紊的搭建超大型复杂应用系统。
- 方便对程序进行测试,spring对于Junit4的支持,可通过注解方便测试程序,方便对程序进行声明式事物管理,我们只需通过配置就可以完成对事物管理。