SpringIoC

一).Spring配置
    1.加入jar包
    2.加入xml文件;默认为applicationContext.xml
 
bean标签属性:
    depends-on="另一个bean标签的id":依赖关系;创建此bean实例之前先会创建depends-on中所写id指定的bean对象。
    scope=:prototype原型模式;缺省默认为单例模式singleton
    destroy-method=:Spring容器关闭时,调用此方法销毁bean实例。且此属性只在singleton单例模式生效。
    init-method=:初始化方法。
 
beans标签属性:
    default-init-method=和default-destroy-method=:指定下面所有bean实例的初始化方法和销毁方法。
 
二).Spring可以通过配置文件为bean注入多种类型的属性, MessageBean类用于演示Spring的多种类型数据的注入方式, 这些类型数据和注入方式包括:

一. 注入基本值。

二. 注入Bean对象。

    new ClassPathXmlApplicationContext("xm文件名:applicationContext.xml").getBean("<bean>的id")
  1、无参方法
 

    1). 用构造器来实例化的方式配置代码

    <!--id:指定唯一标示; class:包名-->
    <bean id="" class=""></bean>
 
    2). 使用静态工厂的方法实例化
    <!-- id:为唯一标示; class=包名 ; facroy-method:创建bean对象的静态工厂方法-->
    <bane id="" class= "" factory-method=""></bean>
 
    3). 使用实例工厂方法实例化
    <!--第一个bean标签创建作为工厂的对象;第二个bean标签中 factory-bean:指定实例工厂; factory-method:指定工厂方法-->
    <bean id="" class="" ></bean>
    <bean id="" factory-bean="" factory-method=""></bean>
 
    2、setter注入属性的方式创建bean实例
    <!--子标签property中name为bean对象的属性的变量名;value为要给的值-->
    <bean id="" class="">
        <property name="" value=""></property>
        <property name="" value=""></property>
        ....................
    </bean>
 
    3、构造方法参数注入
    <bean id="bean1" .............>
        .........
    </bean>
 
    <!--创建下面的bean用构造方法,但是有参数,参数类型正好是另一个bean实例-->
    <bean id="" class="">
      <constructor-arg name="参数的变量名" ref="bean1"/>
    </bean>
 
    attention : 构造方法中写 “this.变量名=变量名”不能反过来写,否则会报空指针异常
 
    4、自动装配
    <!-- autowire属性byType,byName,constructor,autodetect
    attention : 若选择byType,参数类型也可以是父类,接口类型-->
    <bean id="" class="" autowire=""></bean>
 
 

三. 直接集合注入。

四. 引用方式集合注入

五. 注入Spring表达式值。

六. 注入null或空字符串。

    
 
 
 
 
 
 
 
 
 
 
 

posted on 2015-01-12 15:03  IMPLY  阅读(167)  评论(0编辑  收藏  举报