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

Spring中几种构造方法实例化的方法

程序员文章站 2022-06-28 17:19:40
1、基本数据类型或String 使用value属性赋值 2、类类型,则使用ref属性赋值

1、基本数据类型或String 使用value属性赋值

<bean class="com.jd.vo.Student">
    <constructor-arg value="12"></constructor-arg>
    <constructor-arg value="Jim"></constructor-arg>
</bean>

2、类类型,则使用ref属性赋值

<bean class="com.jd.vo.Student">
    <constructor-arg ref="date"></constructor-arg>
</bean>

3、List 则使用list标签

    <bean id="n" class="java.lang.String">
         <constructor-arg value="黄林"></constructor-arg>
    </bean>
    <bean class="com.jd.vo.Student">
        <constructor-arg>
            <list>
                <value>张三</value>
                <value>李四</value>
                <bean class="java.lang.String">
                    <constructor-arg value="王五"></constructor-arg>
                </bean>
                <ref bean="n"></ref>
            </list>
        </constructor-arg>
    </bean>

4、array 则使用array标签

    <bean name="s" class="java.lang.Integer">
        <constructor-arg value="100"></constructor-arg>
    </bean>
    <bean class="com.jd.vo.Student">
        <constructor-arg>
            <array>
                <value>70</value>
                <bean class="java.lang.Integer">
                    <constructor-arg value="90"></constructor-arg>
                </bean>
                <ref bean="s"></ref>
            </array>
        </constructor-arg>
    </bean>

5、set 则使用set标签

    <bean name="t" class="java.lang.String">
        <constructor-arg value="119"></constructor-arg>
    </bean>
    <bean class="com.jd.vo.Student">
        <constructor-arg>
            <set>
                <value>70</value>
                <bean class="java.lang.String">
                    <constructor-arg value="190"></constructor-arg>
                </bean>
                <ref bean="t"></ref>
            </set>
        </constructor-arg>
    </bean>

6、map 则使用map标签

    <bean name="k" class="java.lang.String">
        <constructor-arg value="ljj"></constructor-arg>
    </bean>
    <bean name="v" class="java.lang.String">
        <constructor-arg value="119"></constructor-arg>
    </bean>
    <bean class="com.jd.vo.Student">
        <constructor-arg>
            <map>
                <entry key="Jim" value="90"></entry>
                <entry key-ref="k" value-ref="v"></entry>
            </map>
        </constructor-arg>
    </bean>

7、properties 则使用props标签

    <bean class="com.jd.vo.Student">
        <constructor-arg>
            <props>
               <prop key="name">Jim</prop>
                <prop key="mobile">789</prop>
            </props>
        </constructor-arg>
    </bean>

    <bean id="s" class="java.lang.Integer">
        <constructor-arg value="100"></constructor-arg>
    </bean>
    <bean class="com.jd.vo.Student">
        <property name="name" value="Jim"></property>
        <property name="scores">
            <array>
                <value>120</value>
                <bean class="java.lang.Integer">
                    <constructor-arg value="90"></constructor-arg>
                </bean>
                <ref bean="s"></ref>
            </array>
        </property>
    </bean>

Test中执行即可得到结果

import com.jd.vo.Student;
import org.springframework.context.support.ClassPathXmlApplicationContext;

import java.util.Date;

public class Test {

    public static void main(String[] args) {
        ClassPathXmlApplicationContext applicationContext = new ClassPathXmlApplicationContext("application.xml");
        /*Date date = applicationContext.getBean(Date.class);
        System.out.println(date);*/

        /*Object object = applicationContext.getBean("ddd");
        System.out.println(object);*/

        applicationContext.close();//关闭applicationContext
    }
}

 

本文地址:https://blog.csdn.net/m0_46383618/article/details/109276488

相关标签: xml java