beans-realation.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:util="http://www.springframework.org/schema/util"xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsdhttp://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-4.0.xsd">
<!--     abstract="true" 则不能获得这个bean 说明它只是一个模板,只能被继承 --><bean id = "address" class="com.yuxishua.autowire.Address" p:city="Beijing" p:street="ChangAnLu" abstract="true"></bean>
<!--     继承bean的配置使用parent 属性,但是没有java 继承的意思 --><bean id = "address2" parent="address" p:street="HanSenLU"></bean>
<!--     要求person bean 必须有一个关联的car ,意思就是说这个bean依赖car这个bean --><bean id = "person"  depends-on="car" class="com.yuxishua.autowire.Person" p:name="Tom" p:address-ref="address2" ></bean><bean id = "car" class="com.yuxishua.autowire.Car" p:brand="AuDi" p:price="30000"></bean>
</beans>

package com.yuxishua.beansrelation;import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;import com.yuxishua.autowire.Address;
import com.yuxishua.autowire.Car;
import com.yuxishua.autowire.Person;public class Main
{public static void main(String[] args){ApplicationContext ctx = new ClassPathXmlApplicationContext("beans-realation.xml");Person person = (Person) ctx.getBean("person");Address address2 = (Address) ctx.getBean("address2");Car car = (Car) ctx.getBean("car");System.out.println(address2 );System.out.println(person);System.out.println(car);}}

package com.yuxishua.autowire;public class Person
{private String name;private Address address;private Car car;@Overridepublic String toString(){return "Person [name=" + name + ", address=" + address + ", car=" + car+ "]";}public String getName(){return name;}public void setName(String name){this.name = name;}public Address getAddress(){return address;}public void setAddress(Address address){this.address = address;}public Car getCar(){return car;}public void setCar(Car car){this.car = car;}}

package com.yuxishua.autowire;public class Car
{private String brand;private double price;public String getBrand(){return brand;}public void setBrand(String brand){this.brand = brand;}public double getPrice(){return price;}public void setPrice(double price){this.price = price;}@Overridepublic String toString(){return "Car [brand=" + brand + ", price=" + price + "]";}}

package com.yuxishua.autowire;public class Address
{private String city;private String street;@Overridepublic String toString(){return "Address [city=" + city + ", street=" + street + "]";}public String getCity(){return city;}public void setCity(String city){this.city = city;}public String getStreet(){return street;}public void setStreet(String street){this.street = street;}}

就上面的代码,结果输出

Person [name=Tom, address=Address [city=Beijing, street=HanSenLU], car=null]

car 为什么没有注入呢,是spring版本的问题吗?还是什么原因?

spring为4.0.8

转载于:https://www.cnblogs.com/yuxishua/p/5782896.html

spring depends-on 不起作用相关推荐

  1. Spring中@AliasFor注解的作用及原理

    本文基于Springboot 2.1.6.RELEASE 版本分析. 关于@AliasFor注解,曾提过的一个issue Explicit attribute overrides configured ...

  2. Spring boot热部署的作用和原理

    Spring boot热部署的作用和原理 前言 一.Spring boot热部署的作用 1.什么是SpringBoot热部署 2.什么项目重启 3.什么静态文件 4.如何使用Spring boot热部 ...

  3. spring的各种注解的作用-持续更新中

    所谓的注入到底啥意思? 其实就是spring内部的import 和python里面的import numpy差不多的效果. 依赖注入: 扯白了就是你自己写的对象,需要被spring兼容. 先说说所谓的 ...

  4. spring boot常用注解的作用

    Controller层注解 @Controller和@RestController的区别 @RestController注解相当于@ResponseBody + @Controller合在一起的作用 ...

  5. spring事务管理器的作用_【面试必问】Spring中的事务管理详解

    在这里主要介绍Spring对事务管理的一些理论知识,实战方面参考上一篇博文: http://www.cnblogs.com/longshiyVip/p/5061547.html 1. 事务简介: 事务 ...

  6. 排查Spring事务注解不起作用的原因

    今天帮同事排查了个Spring事务不起作用的问题,Spring Boot项目,加了事务注解,但是事务不起作用,到底是啥原因导致事务没起作用呢?经过一番排查,终于找到了原因,在此做个记录,以备再用. 事 ...

  7. spring的jar各包作用

    http://yjwen337.blog.163.com/blog/static/3625847820106132949858/[转] spring.jar是包含有完整发布的单个jar 包,sprin ...

  8. Spring中@Import注解的作用和使用

    查看Import注解源码 作用: 1.声明一个bean 2. 导入@Configuration注解的配置类 3.导入ImportSelector的实现类 4.导入ImportBeanDefinitio ...

  9. Spring各jar包的作用(转载)

    spring.jar是包含有完整发布的单个jar 包,spring.jar中包含除了spring-mock.jar里所包含的内容外其它所有jar包的内容,因为只有在开发环境下才会用到 spring-m ...

  10. Spring各jar包的作用

    1.spring.jar 是包含有完整发布模块的单个jar 包. org.springframework.aop 包含在应用中使用Spring的AOP特性时所需的类. org.springframew ...

最新文章

  1. Java 8的6个问题
  2. 【Windows10 IoT开发系列】开发人员模式设置
  3. SpringCloud教程-消息总线Bus 服务端(server)刷新(SpringCloud版本Greenwich.SR4)
  4. IOS中UIViewController的创建
  5. CodeForces - 103E Buying Sets(最小权闭合子图)
  6. 【无码专区10】第K大查询(双向链表 /主席树+st表)
  7. 机器学习笔记(一) : 线性建模——最小二乘法
  8. PyCharm常用快捷键和设置
  9. Yearn V2 Vaults Swap发布,目前未经审核
  10. django数据模型中关于on_delete的使用
  11. 我的java编程之路小小总结感想
  12. Visio Professional 2016 破解教程
  13. 动易html编辑器,解决动易后台编辑器(混合模式,编织模式不可用变灰
  14. 计算圆周长,圆面积,圆球表面积,圆球体积,圆柱体积
  15. java手机飞信_手机飞信JAVA通用版 手机飞信2011通用版
  16. html导航栏前面有图片,CSS带图片的漂亮导航菜单
  17. Dynamics CRM: 权限问题之SecLib::AccessCheckEx2 failed
  18. Centos7下turn off cpu throttling
  19. element 表格背景颜色透明
  20. 正交排列法、正交试验设计、正交表

热门文章

  1. labview在2048中添加时间滚动条_Chrome优化深色模式:滚动条颜色也能跟随变化 使上网更具沉浸感...
  2. Spring boot Tomcat配置
  3. php用ajax方式实现四级联动
  4. 将检索出来的列按逗号拼接起来
  5. mysql自增id获取失败
  6. 网页设计师的最佳设计工具名单出炉
  7. 微软应提前发布专用于ARM处理器的Windows 8平板电脑系统
  8. javascript tabIndex属性
  9. c# mysql app.config_60. C# -- 读取 appconfig文件配置数据库连接的方法
  10. 以计算机谈人文科学,阅读下面一段文字,完成问题   自20世纪80年代以来,世界都在谈“软科学技术”,何谓软科学?经常听人说:“脑子不够使。”这其实就是对软科学的需求。于是,从古至今,...