码迷,mamicode.com
首页 > 编程语言 > 详细

Spring核心之IoC

时间:2015-05-25 16:24:01      阅读:121      评论:0      收藏:0      [点我收藏+]

标签:

    在J2EE平台中,Spring是一种优秀的轻量级企业应用解决方案。它的核心技术就是IoC(控制反转)和AOP(面向切面编程)。

1.什么是控制反转与依赖注入。

    IoC的英文是Inversion of Control即控制反转。开发者在使用类之前,需要先创建对象的实例。但是IoC将创建实例的任务交给IoC容器,这样开发者在用代码时直接使用类的实例,这就是IoC控制反转。Martin Fowler专门写了一篇文章讨论控制反转的概念,并提出了一个更为准确的概念,叫做依赖注入(Dependency Injection)

    依赖注入有3种类型,Spring支持后两种:

  • 接口注入。接口注入基于将调用与实现分离,这种依赖注入方式必须实现容器所规定的接口,使程序代码和容器的API绑定在一起,不是理想的注入方式。
  • Setter注入。基于JavaBean的Setter方法为属性赋值。在实际中应用广泛示例如下:
  • public class User{
       private String name;
    
       public String getName(){
             return name;
        }  
    
       public void seName(String name){
            this.name = name;
        }  
    }
  •  构造器注入。基于构造方法为属性赋值,容器通过调用类的构造方法,将其所需的依赖关系注入其中,示例如下:

  • public class User{
       private String name;
    
       public User(String name){   //构造器
             this.name = name;     //为属性赋值
        }    
    }

     使用构造方法为属性赋值,好处是在实例化对象的同时就完成了属性的初始化。

     控制反转与依赖注入的优点是?

    由于在控制反转的模式下把对象都放入XML文件中定义,所以开发人员实现一个子类将变得更为简单,修改XML文件即可。而且,控制反转颠覆了“使用对象前必须创建”的传统观念,在控制反转模式下,开发人员不再关注类是如何创建的,从容器中抓取一个类然后直接调用即可。

 

Spring核心之IoC

标签:

原文地址:http://www.cnblogs.com/little-YTMM/p/4528049.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!