zoukankan      html  css  js  c++  java
  • Spring(二)DI( Dependency Injection依赖注入)

    1.setter注入

    ①:bean类:

    public class DITest implements IDIBeanDAO{
        private String name;
        private int age;
        private Double fees;
        private Set<DITest> beans;
    //省略getter/setter方法
    }

    ②: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.xsd">
        <bean  id="setterBean1" class="com.gxxy.spring_04annotation.di.setter.DITest">
            <property name="name" value="LiSi"></property>
            <property name="age" value="20"></property>
            <property name="fees" value="134.2"></property>
            
        </bean>
        
        <bean  id="setterBean" class="com.gxxy.spring_04annotation.di.setter.DITest">
            <property name="name" value="ZhangSan"></property>
        <property name="age" value="18"></property> 
            <property name="fees" value="1826.3"></property>
            <property name="beans">
                <set>   SET的写法
                    <ref bean="setterBean1" />   
                </set>
                <!-- <property name="beans">
                <list>   list的写法
                    <ref bean=""/>
                </list>
                </property>
                
                <property name="testMap">
                <map>    map的写法
                    <entry key="" value=""/>
                    <entry key-ref="" value-ref="" />
                </map>
            </property> -->
            </property>
        </bean>
    </beans>

    2.Construct注入

    ①:Bean类:

    public class DITest implements IDIBeanDAO{
    
        private String name;
        private int age;
        private Double fees;
        public DITest() {}
        public DITest(String name, int age, Double fees) {
            this.name = name;
            this.age = age;
            this.fees = fees;
        }
    }
    //省略gettersetter 方法    

    ②: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.xsd">
        
        <bean  id="constructBean" class="com.gxxy.spring_04annotation.di.construct.DITest">
        <!-- <constructor-arg name="name" value="ZhangSan"></constructor-arg>        
        <constructor-arg name="age" value="18"></constructor-arg>        
        <constructor-arg name="fees" value="1235.2"></constructor-arg>     -->    
    <constructor-arg index="0" value="1235.2"></constructor-arg> <constructor-arg index="1" value="12"></constructor-arg> <constructor-arg index="2" value="1235.2"></constructor-arg> </bean> </beans>
  • 相关阅读:
    Django 06模板语言的复用
    Django 07模型层—单表操作
    Django 05模板-变量、过滤器、 标签
    Django 04(视图层基础01)
    Django 03 (路由层基础)
    Django--02(项目创建,数据请求迁移,单表orm增删改查)
    Web 文本、reset操作、高级选择器、边界圆角、a的四大伪类、精灵图
    web前端 基础选择器、长度与颜色、display、嵌套、盒模型
    MySQL之数据库的常用语句
    PHP中级篇 Apache配置httpd-vhosts虚拟主机总结及注意事项(转载)
  • 原文地址:https://www.cnblogs.com/zhang-bo/p/6628145.html
Copyright © 2011-2022 走看看