zoukankan      html  css  js  c++  java
  • Spring 属性注入

    1. 构造函数注入
    <bean id="person" class="com.ibuyi.free.Case_one.Person">
             <constructor-arg name="name" value="Yang"/>
             <constructor-arg name="age" value="20"/>
       </bean>
    
    
    1. setter方法注入
    private String name;
        private Integer age;
        public Person(String name,Integer age){
            this.name = name;
            this.age = age;
    
        }
    
        public String getName() {
            return name;
        }
    
        public void setName(String name) {
            this.name = name;
        }
    
        public Integer getAge() {
            return age;
        }
    
        public void setAge(Integer age) {
            this.age = age;
        }
    
    
    <bean id="person" class="com.ibuyi.free.Case_one.Person">
             <property name="name" value="Yang"/>
             <property name="age" value="20"/>
    </bean>
    
    1. -p名称空间
    <beans 
    xmlns="http://www.springframework.org/schema/beans"
    xmlns:p="http://www.springframework.org/schema/p"
    <!--这里需要引入p空间-->
    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="person" class="com.ibuyi.free.Case_one.Person" 
             p:name="yangkun" p:age="30">
       </bean>
    </beans>
    
    1. Spring SqEL注入
    <bean id="year" class="com.ibuyi.free.Case_one.Age"/>
        <bean id="person" class="com.ibuyi.free.Case_one.Person">
            <property name="name" value="#{'yang'}"></property>
            <property name="age" value="#{year.getAge(50)}"></property>
        </bean>
    

    其中Age.java

    package com.ibuyi.free.Case_one;
    
    public class Age {
        public int getAge(int age){
            return age+10;
        }
    }
    
    

    结果:
    在这里插入图片描述

    1. 复杂类型的注入
    package com.ibuyi.free.Case_one;
    
    import java.lang.reflect.Array;
    import java.util.*;
    
    public class Collection {
        private String ars[];
        private List<String> list;
        private Set<String> set;
        private Map<String,Integer> map;
        private Properties properties;
    
    
        public String[] getArs() {
            return ars;
        }
    
        public void setArs(String[] ars) {
            this.ars = ars;
        }
    
        public List<String> getList() {
            return list;
        }
    
        public void setList(List<String> list) {
            this.list = list;
        }
    
        public Set<String> getSet() {
            return set;
        }
    
        public void setSet(Set<String> set) {
            this.set = set;
        }
    
        public Map<String, Integer> getMap() {
            return map;
        }
    
        public void setMap(Map<String, Integer> map) {
            this.map = map;
        }
    
        public Properties getProperties() {
            return properties;
        }
    
        public void setProperties(Properties properties) {
            this.properties = properties;
        }
    
        @Override
        public String toString() {
            return "Collection{" +
                    "ars=" + Arrays.toString(ars) +
                    ", list=" + list +
                    ", set=" + set +
                    ", map=" + map +
                    ", properties=" + properties +
                    '}';
        }
    }
    
    
    <bean id="collection" class="com.ibuyi.free.Case_one.Collection">
            <property name="ars">
                <list>
                    <value>aaa</value>
                    <value>bbb</value>
                    <value>ccc</value>
                </list>
            </property>
            <property name="list">
                <list>
                    <value>ddd</value>
                    <value>eee</value>
                    <value>fff</value>
                </list>
            </property>
            <property name="set">
                <set>
                    <value>ggg</value>
                    <value>hhh</value>
                    <value>iii</value>
                </set>
            </property>
            <property name="map">
                <map>
                    <entry value="1" key="jjj"></entry>
                </map>
            </property>
            <property name="properties">
                <props>
                    <prop key="username">root</prop>
                    <prop key="password">123456</prop>
                </props>
            </property>
        </bean>
    

    在这里插入图片描述

  • 相关阅读:
    babel-loader的原理
    js弱类型转换的知识点
    个人说明
    嗯三月的小计划
    bzoj2326 [HNOI2011]数学作业
    bzoj2654 tree
    bzoj1018[SHOI2008]堵塞的交通traffic
    bzoj1937[Shoi2004]Mst 最小生成树
    一般图最大匹配-带花树-带注释模板
    FFT快速傅里叶变换-递归版-带注释模板
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13309419.html
Copyright © 2011-2022 走看看