天天看点

1.3—Spring基础配置—1.依赖注入

spring框架本身有四大原则:

1)使用pojo进行轻量级和最小侵入式开发。

2)通过依赖注入和基于接口编程实现松耦合。

3)通过aop和默认习惯进行声明式编程。

4)使用aop和模板(template)减少模式化代码。

spring所有功能的设计和实现都是基于此四大原则的。

依赖注入

1.点睛

我们经常说的控制翻转(inversion of control - ioc)和依赖注入(dependency injection - di)在spring环境下是等同的概念,控制翻转是通过依赖注入实现的。所谓依赖注入指的是容器负责创建对象和维护对象间的依赖关系,而不是通过对象本身负责自己的创建和解决自己的依赖。

依赖注入的主要目的是为了解耦,体现了一种“组合”的理念。

spring ioc容器(applicationcontext)负责创建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-330提供的注解

@resource:jsr-250提供的注解