Spring(2.3.22 IOC )

来源:互联网 发布:云游seo 编辑:程序博客网 时间:2024/06/07 08:49

IOC


控制反转:InversionOfControl
所谓控制反转,就是应用本身不负责依赖对象的创建及维护,依赖对象的创建及维护是由外部容器负责,这样控制权就由应用转移到了外部容器,控制权的转移就是所谓的反转

使用步骤

操作工具

  • eclipse
  • spring tools
  • spring  tools在线下载
  • maven

操作

  • 使用eclipse建立maven工程
  • 在工程的pom.xml 的源代码中,写入spring jar包坐标。spring官网
<!-- spring  框架  依赖  4.3.10版 -->    <dependency>        <groupId>org.springframework</groupId>        <artifactId>spring-context</artifactId>        <version>4.3.10.RELEASE</version>    </dependency>
  • 建立
    配置文件

加载配置文件,有三种方式,二种大类

  • 延时加载
    • 就是单你使用某个类时,这个类,才会被实例化,故此也被称之为,懒加载
  • 及时加载
    • 当配置文件,一加载,马上就把配置文件内的所有类都实例化

示例

 //延时加载 BeanFactory beanfactory=new XmlBeanFactory(new ClassPathResource("applicationContext.xml")); //通过,applicationContext.xml中的 bean的id取到  bean        Computer computer=(Computer) beanfactory.getBean("需要实例化的对象id");//及时加载//第一种:ApplicationContext applicationContext=new ClassPathXmlApplicationContext("applicationContext.xml");//第二种:    BeanFactory beanfactory=new ClassPathXmlApplicationContext("applicationContext.xml");

配置的基础标签

         < bean> 代表一个类 属性介绍            id 代表类的标识(可以自己设)            class需要实例化的类全限定名             init-method="被调用的方法名"  初始化就跳方法            lazy-init:"true";  设定,此类是否懒加载       <property>   bean  的子标签 ,用来设定类的属性        name="被设定的属性名"    配设定的属性名        value="设定值"       //示例       set  注入  值       <property name="cid" value="1"></property>      构造方法  注入值 <constructor-arg index="0" type="类型" value="" name="属性名" ref=""></constructor-arg>    集合注入    <property name="集合属性名">        //也可以注入其他集合            <list>                <value>钓鱼</value>                <value>王者农药</value>                <value>毒奶粉</value>            </list>   </property>//  代码示例<bean id="代表实例id(自由设置)" class="需要,被实例话的类,全限定名">       <!-- 设定属性  采用set 注入(故此getset方法,必须要存在),   ref 需要引入对象-->       <property name="name与被需要,被设置的属性相同" ref="AMD" >       </property>        <!-- 设定属性  采用set 注入  硬盘接口下的类-->       <property name="disk" ref="ADATA">       </property>       <property name="memory" ref="SanDisk">       </property>   </bean>

视图

这里写图片描述
这里写图片描述

原创粉丝点击