欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Spring学习(二)---在IoC容器中装配Bean 博客分类: Spring 3.x 企业应用开发笔记 springbeanioc框架 

程序员文章站 2024-02-06 19:06:40
...
一 Spring配置概述
1.Spring容器高层视图
  要使应用程序中的Spring容器成功启动,需要以下三方面的条件都具备:
  • Spring框架的雷暴都已经放到应用程序的类路径下;
  • 应用程序为Spring提供完备的Bean配置信息;
  • Bean的类都已经放在应用程序的类路径下。


Spring学习(二)---在IoC容器中装配Bean
            
    
    博客分类: Spring 3.x 企业应用开发笔记 springbeanioc框架 

2.基于XML的配置

Spring学习(二)---在IoC容器中装配Bean
            
    
    博客分类: Spring 3.x 企业应用开发笔记 springbeanioc框架 

二 依赖注入

1.属性注入
<bean id="car" class="com.baobaobao.ditype.Car">
  <property name="maxSpeed"><value>200</value></property>
  <property name="brand"><value>奔驰</value></property>
  <property name="price"><value>2000000</value></property>
</bean>

Bean的每一个属性对应一个<property>标签,那么为属性的名称,在Bean实现类中拥有与其对应的Setter方法。Spring只会检查Bean中是否有对应的Setter方法,至于Bean中是否有对应的属性变量则不做要求
注意:JavaBean特殊的属性命名规范,一般情况下,java的属性变量名都以小写字母起头。但也允许大写字母起头的属性变量名,不过必须满足“变量的前两个字母要么全部大写,要么全部小写”的要求。

2.构造函数注入
<bean id="car" class="com.baobaobao.ditype.Car">
  <constructor-arg index="0" type="java.lang.String">
     <value>奔驰</value>
  </constructor-arg>
  <constructor-arg index="1" type="double">
     <value>20000</value>
   </constructor-arg>
</bean>


由于一个类可以有多个构造函数,所以在匹配入参上有好几种匹配方式。

3.工厂方法注入

<!--非静态工厂方法:需要创建工厂实例 -->
<bean id="carFactory" class="com.baobaobao.ditype.CarFactory"/>
<!-- factory-bean指定上面的工厂类Bean;factory-method指定工厂类创建该Bean的工厂方法-->
<bean id="car5" factory-bean="carFactory" factory-method="createHongQiCar"/>

<!--静态工厂方法 -->
<bean id="carFactory" class="com.baobaobao.ditype.CarFactory" factory-method="createHongQiCar/>


  • Spring学习(二)---在IoC容器中装配Bean
            
    
    博客分类: Spring 3.x 企业应用开发笔记 springbeanioc框架 
  • 大小: 138.4 KB
  • Spring学习(二)---在IoC容器中装配Bean
            
    
    博客分类: Spring 3.x 企业应用开发笔记 springbeanioc框架 
  • 大小: 147.8 KB