Spring核心技术----IoC

   Spring的核心概念是IoC,IoC的抽象概念是“依赖关系的转移”

   程序不依赖于实现,而是程序与实现都依赖于抽象。

   将控制权由实现的一方转移至抽象的一方, 藉由让抽象方拥有控制权,可获得组件的可重用性。

   Spring所采用的是依赖注入来实现IoC.

 

    依赖注入的意义是:

          保留抽象接口,让组件依赖于抽象接口,当组件要与其他实际的对象发生依赖关系时,

       藉由抽象接口来注入依赖的实际对象。

 

 

Spring的IoC容器的最大特点是实现了反转控制,也就是说在开发过程中,开发人员不需要关心容器是怎样的,也不需要调用容器的任何API,容器会自动进行被管理对象的初始化以及对象之间依赖关系的维护。

    对于IoC容器的理解,最关键的是编程思想的转变。

   Spring的IoC容器就是一个通用的Bean工厂,它可以通过各种方式获得Bean对象以

  及进行Bean对象的管理。

    IoC容器可以管理任何的Java对象

   第一个Spring程序:

=============

  HelloBean.java

-------------------------------------------------------------------------------------------

   public class HelloBean {
           public String helloWord;

           public String getHelloWord() {
                   return helloWord;
            }

             public void setHelloWord(String helloWord) {
                   this.helloWord = helloWord;
             }
   }

==============

applicationContext.xml

--------------------------------------------------------------------------------------------

<?xml version="1.0" encoding="UTF-8"?>
<beans
 xmlns="http://www.springframework.org/schema/beans"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">

 

<!--定义了一个Bean-->
 <bean id="helloBean" class="only.HelloBean">
 <property name="helloWord">
 <value>Hello!Justin!</value>
 </property>
 </bean>

</beans>

===============

SpringDemo.java

----------------------------------------------------------------------------------------------

package only;

import org.springframework.beans.factory.BeanFactory;
import org.springframework.beans.factory.xml.XmlBeanFactory;
import org.springframework.core.io.FileSystemResource;
import org.springframework.core.io.Resource;

public class SpringDemo {
        public static void main(String[] args) {
              Resource rs=
                        new FileSystemResource("src/applicationContext.xml"); //可指定绝对或相对路径来指定Bean
 定义文件的位置。
              BeanFactory factory=new XmlBeanFactory(rs);  //创建Bean工厂

 

              HelloBean hello=(HelloBean)factory.getBean("helloBean");  //创建对象

              

              

System.out.println(hello.getHelloWord());  //应用Bean对象

}
}

运行输出:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值