转自:
Spring 自面世以来,一直深受大家的喜爱,它延申出很多优秀的框架,如:
Spring framework、SpringMVC、SpringBoot、Spring Cloud、Spring Data、Spring Security 等,
我们将这些称之为“Spring 全家桶”。
Spring是一个轻量级的开源框架
Spring framework:我们常说的Spring框架,它是所有框架的基础,是所有框架的核心。
Spring MVC:是市面上使用最广的Java Web开发框架,可以毫不夸张的说:“是Java中最成功的框架”
是目前主流的 Java Web 开发框架,是 Java 世界最为成功的框架。
Spring 由 Rod Johnson 创立,2004 年发布了 Spring 框架的第一版,其目的是用于简化企业级应用程序开发的难度和周期。
Spring 是分层的 Java SE/EE 一站式轻量级开源框架,以 IoC(Inverse of Control,控制反转)和 AOP(Aspect Oriented Programming,面向切面编程)为内核。
IoC: 指将对象的创建权交给 Spring 去创建。使用 Spring 之前,
以前创建一个对象通常由new关键字生成,自从Spring出现之后,对象创建这些操作则由Spring框架完成
AOP:用于封装多个类的公共行为,降低耦合度,减少重复代码,
AOP常用于日志,事务,权限等。
在 Spring 中,我们将Java类都定义为资源,都是类的实例对象(bean),Spring 使用IoC容器对这些Bean进行管理,即我们开源理解为Spring为基于Bean变成,
使用Spring框架使Java开发变得优雅简单,高效,易扩展。
Spring通过整个各种框架,如:表现层的SpringMVC
持久层可结合MyBatis Hibernate JdbcTemplate
Spring框架,可轻松整合其它框架,更好的服务,非常便于开发,所有Spring称为各大公司的首先框架
Spring 框架拥有以下特点
1)方便解耦,简化开发
Spring 是一个大的IoC容器,我们可将所有对象的创建及其依赖关系交给其管理
2)方便集成各种优秀框架
Spring具有优良的团队合作意识,它可轻松的集成其它框架,如: Struts2、Hibernate、MyBatis 等
3)降低 Java EE API 的使用难度
Spring对一个API做了封装,使Java开发变得非常容易
4)方便程序的测试
Spring 支持 JUnit4,可以通过注解方便地测试 Spring 程序。
5)AOP 编程的支持
Spring 提供面向切面编程,可以方便地实现对程序进行权限拦截和运行监控等功能。
6)声明式事务的支持
只需要通过配置就可以完成对事务的管理,而无须手动编程。
对于一个Java 程序员, Spring 中有非常多优秀的设计模式及思想值得你去学习!