Spring的依赖注入
2015-06-12 15:35
465 查看
计应134 徐雪双
依赖注入:
IoC控制反转是一个重要的面向对象编程的法则来削减程序的耦合问题,也是轻量级的Spring框架的核心。控制反转分为依赖注入(Dependency Injection,DI)和依赖查找(dependency Lookup)。其中依赖注入的应用比较广泛。
依赖注入是将系统中的各个类之间的依赖关系先剥离(解耦或分离),然后在应用系统运行过程中根据应用之间的调用关系适时地注入到目标系统中。简单说,依赖注入让bean与bean之间以配置文件组织在一起,而不是以硬编码的方式耦合在一起。
依赖注入的3中形式:
依赖注入的基本原理是对象之间的依赖关系,可以通过构造器的参数、工厂方法的参数实现,或给构造函数或者工厂方法创建的对象设置属性。
(1)构造器注入
在接受注入的类中定义一个构造方法,并在参数中定义一个需要注入的元素。定义一个类USB,为了让类USB接受DataBase的注入,需要定义一个构造方法来接受DataBase的注入。USB.java的示例代码如下:
public class USB{
private DataBase db;
public USB(DataBase db){
this.db = db;
}
……
//根据注入的数据库,从数据库中获取数据
public void getData(){
……
db.getData();
……
}
}
(2)接口注入:在接口中定义要注入的信息,并通过接口完成注入。
(3)setter注入
在接受注入的类中定义一个Set方法,并在参数中定义需要注入的元素。
定义一个USB类,为了让类USB接受DataBase的注入,需定义一个set方法让类USB接受DataBase的注入。USB.java的示例代码如下:
public class USB{
private DataBase db;
public void setDataBase(DataBase db){
this.db = db;
}
……
//根据注入的数据库,从数据库中获取数据
public void getData(){
……
db.getData();
……
}
}
依赖注入:
IoC控制反转是一个重要的面向对象编程的法则来削减程序的耦合问题,也是轻量级的Spring框架的核心。控制反转分为依赖注入(Dependency Injection,DI)和依赖查找(dependency Lookup)。其中依赖注入的应用比较广泛。
依赖注入是将系统中的各个类之间的依赖关系先剥离(解耦或分离),然后在应用系统运行过程中根据应用之间的调用关系适时地注入到目标系统中。简单说,依赖注入让bean与bean之间以配置文件组织在一起,而不是以硬编码的方式耦合在一起。
依赖注入的3中形式:
依赖注入的基本原理是对象之间的依赖关系,可以通过构造器的参数、工厂方法的参数实现,或给构造函数或者工厂方法创建的对象设置属性。
(1)构造器注入
在接受注入的类中定义一个构造方法,并在参数中定义一个需要注入的元素。定义一个类USB,为了让类USB接受DataBase的注入,需要定义一个构造方法来接受DataBase的注入。USB.java的示例代码如下:
public class USB{
private DataBase db;
public USB(DataBase db){
this.db = db;
}
……
//根据注入的数据库,从数据库中获取数据
public void getData(){
……
db.getData();
……
}
}
(2)接口注入:在接口中定义要注入的信息,并通过接口完成注入。
(3)setter注入
在接受注入的类中定义一个Set方法,并在参数中定义需要注入的元素。
定义一个USB类,为了让类USB接受DataBase的注入,需定义一个set方法让类USB接受DataBase的注入。USB.java的示例代码如下:
public class USB{
private DataBase db;
public void setDataBase(DataBase db){
this.db = db;
}
……
//根据注入的数据库,从数据库中获取数据
public void getData(){
……
db.getData();
……
}
}
相关文章推荐
- JavaEE6.0中非常重要的EJB3.1规范的新特性
- LeetCode_29---Divide Two Integers
- spring+springMVC事务不回滚
- java多态理解
- java读取properties配置文件
- MyEclipse使用指南介绍
- struts2基于注解的action
- Java 8 Optional类深度解析
- java 最大线程数
- Hibernate在MyEclipse中的配置
- MyEclipse10.0 采用插件方式安装 SVN
- springmvc + hibernate构建web工程
- java,下划线与驼峰命名转换
- SpringMVC RESTful Json Example
- Java正则表达式(二)
- spring问题:Error creating bean with name 'articleController': Injection of autowired dependencies fail
- 第一章 初识Java
- Spring MVC入门
- SpringMVC导出Excel
- dubbo、zookeeper、Spring整合实例