spring創建對象的多種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"
    xmlns:p="http://www.springframework.org/schema/p"
    xmlns:context="http://www.springframework.org/schema/context"
    xsi:schemaLocation="
        http://www.springframework.org/schema/beans
        http://www.springframework.org/schema/beans/spring-beans.xsd
        http://www.springframework.org/schema/context
        http://www.springframework.org/schema/context/spring-context.xsd">
 
     <!-- IOC容器的配置,要創建的所有的對象都配置在這裏 -->
     <!-- 構造方法 -->
    <bean id="admin1" class="a_erchou.Admin" scope="singleton">
       <constructor-arg value="1"></constructor-arg>
       <constructor-arg value="1"></constructor-arg>
       <constructor-arg value="1"></constructor-arg>
    </bean>
    <!-- set方法 -->
    <bean id = "admin2" class="a_erchou.Admin" scope="singleton">
       <property name="id" value="2"></property>
       <property name="userName" value="2"></property>
       <property name="password" value="2"></property>
    </bean>
</beans>

內部bean配置 :

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:p="http://www.springframework.org/schema/p"
    xmlns:context="http://www.springframework.org/schema/context"
    xsi:schemaLocation="
        http://www.springframework.org/schema/beans
        http://www.springframework.org/schema/beans/spring-beans.xsd
        http://www.springframework.org/schema/context
        http://www.springframework.org/schema/context/spring-context.xsd">
 
     <!-- IOC容器的配置,要創建的所有的對象都配置在這裏 -->
     <!-- 普通方法 -->
     <!-- <bean id = "adminDao" class="DI.AdminDao" scope="singleton"></bean>
     
     <bean id = "adminService" class="DI.AdminService" scope="singleton">
        <property name="adminDao" ref="adminDao"></property>
     </bean>
     
     <bean id = "adminAction" class="DI.AdminAction" scope="prototype">
        <property name="service" ref="adminService"></property>
     </bean> -->
     <!-- 內部bean 只能自己使用-->
     <!-- <bean id = "adminAction" class="DI.AdminAction" scope="prototype">
         <property name="service">
             <bean id="adminService" class="DI.AdminService" scope="singleton">
                <property name="adminDao">
                   <bean id = "adminDao" class="DI.AdminDao" scope="singleton"></bean>
                </property>
             </bean>
         </property>
     </bean> -->
     
     
     <bean id = "adminDao" class="DI.AdminDao" scope="singleton"></bean>
     <bean id="adminService" class="DI.AdminService" scope="singleton" p:adminDao-ref="adminDao"></bean>
     <bean id = "adminAction" class="DI.AdminAction" scope="prototype" p:service-ref="adminService"></bean>
     
</beans>

工廠配置:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:p="http://www.springframework.org/schema/p"
    xmlns:context="http://www.springframework.org/schema/context"
    xsi:schemaLocation="
        http://www.springframework.org/schema/beans
        http://www.springframework.org/schema/beans/spring-beans.xsd
        http://www.springframework.org/schema/context
        http://www.springframework.org/schema/context/spring-context.xsd">
 
     <!-- IOC容器的配置,要創建的所有的對象都配置在這裏 -->
     
     <!-- 默認無參數 -->
     <bean id = "admin1" class="erchou.Admin" scope="singleton"></bean>
     
     <!-- 帶參數構造器 -->
     <bean id = "admin2" class="erchou.Admin" scope="singleton">
           <constructor-arg value="1"></constructor-arg>
           <constructor-arg value="jack"></constructor-arg>
           <constructor-arg value="123456"></constructor-arg>
     </bean>
     <!-- 工廠創建對象方法 -->
     <!-- 調用實例方法   :1.先創建工廠 2.創建對象-->
     <bean id = "factroy" class="erchou.ObjectFactoty"></bean>
     <bean id = "admin3" factory-bean="factroy" factory-method="getAdmin"></bean>
     
     
     <!-- 靜態方法 -->
     <bean id = "admin4" class="erchou.ObjectFactoty" factory-method="getStaticAdmin"></bean>
</beans>

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章