zoukankan      html  css  js  c++  java
  • Spring4.0学习笔记(3) —— Spring_Bean之间的关系

    1、继承关系

    bean-relation.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"
        xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">
    
        <bean id="address" class="com.spring.relation.Address">
            <property name="city" value="beijing^"></property>
            <property name="location" value="los angles"></property>
        </bean>
        
        <bean id="address2" parent="address">
            <property name="location" value="new York"></property>
        </bean>
    </beans>

    Address.java

    package com.spring.autowire;
    
    public class Address {
        private String city;
        private String location;
        public String getCity() {
            return city;
        }
        public void setCity(String city) {
            this.city = city;
        }
        public String getLocation() {
            return location;
        }
        public void setLocation(String location) {
            this.location = location;
        }
        @Override
        public String toString() {
            return "Address [city=" + city + ", location=" + location + "]";
        }
    }

    测试

    package com.spring.relation;
    import org.springframework.context.ApplicationContext;
    import org.springframework.context.support.ClassPathXmlApplicationContext;
    
    public class main {
        public static void main(String[] args) {
            ApplicationContext ctx = new ClassPathXmlApplicationContext("bean-relation.xml");
            Address address = (Address)ctx.getBean("address");
            System.out.println(address);
            
            Address address2 = (Address)ctx.getBean("address2");
            System.out.println(address2);
        
        }
    }

    【拓展】 abstract = true的时候,该bean是无法被实例化的。可以去掉用于实例化的class 属性,这样该bean仅为模板bean

        <bean id="address" class="com.spring.relation.Address" abstract="true">
            <property name="city" value="beijing^"></property>
            <property name="location" value="los angles"></property>
        </bean>
        
        <bean id="address2" parent="address">
            <property name="location" value="new York"></property>
        </bean>
  • 相关阅读:
    Qt 任务调度器
    我又回来了,行情好转。
    设置IIS7文件上传的最大大小 maxAllowedContentLength,maxRequestLength
    ckfinder 1
    Oracle 数据库备份还原(Expdp/impdp)记录
    vs2015 去除 git 源代码 绑定
    java 核心技术之多线程篇
    java 核心技术之基础篇(三)
    java核心技术之基础篇(二)
    java 核心技术之基础篇(一)
  • 原文地址:https://www.cnblogs.com/cklovefan/p/5291289.html
Copyright © 2011-2022 走看看