Spring 概述
- Spring 简史:
第一阶段: xml 配置
第二阶段: 注解配置
//:注解本身是没有功能的,就和 xml 一样.注解和 xml 都是一种元数据,元数据即解释数据的数据,这就是所谓的配置.
注解的功能来自用这个注解的地方.
第三阶段: Java 配置
从 spring 3.x 到现在, spring 提供了 Java 配置能力,使用 Java 配置可以让你更理解你配置的 bean.
- Spring 概述:
Spring 框架是一个轻量级的企业级开发的一站式解决方案.所谓解决方案就是可以基于 Spring 解决 Java EE 开发的所有问题. Spring 框架主要提供了 IoC 容器、AOP、数据访问、Web 开发、消息、测试等相关技术的支持.
Spring 使用简单的 POJO( 即无任何限制的普通 Java 对象) 来进行企业级开发. 每一个被 Spring 管理的 Java 对象都称之为 Bean; 而 Spring 提供了一个 IoC 容器用来初始化对象,解决对象间的依赖管理和对象使用.
Spring 基础配置
- Spring 框架四大原则
- 使用 POJO 进行轻量级和最小侵入式开发
- 通过依赖注入和基于接口编程实现松耦合
- 通过 AOP 和默认习惯进行声明式编程
- 使用 AOP 和模板减少格式化代码
Spring所有功能的设计和实现都是基于此四大原则
- 依赖注入
所谓依赖注入指的是容器负责创建和维护对象间的依赖关系,而不是通过对象本身负责自己的创建和解决自己的依赖.
主要目的:
解耦
Spring IoC 容器负责创建 Bean, 并通过容器将功能类 Bean 注入到你需要的 Bean 中,Spring 提供使用 xml、注解、Java 配置、groovy 配置实现 Bean 的配置和注入.
无论是 xml 配置、注解配置还是 Java 配置,都被称为配置元数据,所谓元数据即秒速数据的数据.元数据本身不具备任何可执行的能力,只能通过外界代码对这些元数据进行解析后进行一些有意义操作. Spring 容器解析这些配置元数据进行 Bean 初始化、配置和管理依赖.
声明 bean 的注解:
@Component 标明组件,没有明确的角色.
@Service 在业务逻辑层使用( service).
@Repository 在数据访问层使用(dao).
@Controller 在展示层使用( MVC → Spring MVC).
注入 Bean 的注解,一般情况下通用.
@Autowired: Spring 提供的注解.
@Inject: JSR-303 提供的注解.
@Resource: JSR-250 提供的注解.