Spring基础10——Bean之间关系】的更多相关文章

1.前言 不同的Bean之间存在两种关系:继承和依赖,这里的继承与java中的继承不同,它指的是配置上的继承. 2.继承bean配置 Spring允许继承bean的配置,被继承的bean成为父bean,继承这个父bean的Bean称为子bean,继承bean主要有以下几个特点: 1)子Bean从父Bean中继承配置,包括Bean的属性配置 2)子Bean也可以覆盖从父Bean继承过来的配置,如父bean设置name为zhangsan,子Bean中可以把name的值覆盖为Lisi. 3)父Bean…
一.bean之间的关系 <?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.o…
对于学习spring有帮助的站点:http://jinnianshilongnian.iteye.com/blog/1482071 Bean的自己主动装配 Spring IOC 容器能够自己主动装配 Bean. 需要做的仅仅是在 的 autowire 属性里指定自己主动装配的模式 有以下几种自己主动装配的类型: byType(依据类型自己主动装配): 若 IOC 容器中有多个与目标 Bean 类型一致的 Bean. 在这样的情况下, Spring 将无法判定哪个 Bean 最合适该属性, 所以不…
上篇博文讲Spring的IOC容器时说道,虽然容器功能强大,但容器本身只是个空壳,需要我们主动放入装配对象,并告诉它对象之间的协作关系,然后容器才能按照我们的指示发挥它的魔力,完成装配bean的使命.这里,我们把Spring创建应用对象之间的协作关系的行为成为装配.Spring提供了很多装配bean的方式供我们在开发中选择,我们常用到的有三种装配机制:自动装配.Java注解和XML配置.通常我们将第一种称为隐式的装配机制,后面两种为显示的装配机制.实际应用中,基于便利性考虑,首选的肯定是隐式的自…
1.IOC容器中的Bean的生命周期方法 SpringIOC容器可以管理Bean的生命周期,Spring允许在Bean生命周期的特定点执行定制的任务.SpringIOC容器对Bean的生命周期进行管理的过程: 1)通过构造器或工厂方法创建Bean实例 2)为bean的属性设置值和对其他bean的引用 3)调用Bean的初始化方法 4)Bean可以使用了 5)当容器关闭时,调用Bean的销毁方法 2.验证bean的生命周期 我们可以在Spring的配置文件中声明init-method属性和dest…
1.Bean的作用域种类 Spring中的bean的作用域分为四种:singleton.prototype.session.request,后两种很少使用,下面我们主要来学习前两种 2.singleton单例模式 在Spring种我们可以通过bean标签中的scope属性对Bean的作用域进行设置,singleton是默认值,容器初始时创建bean实例,在整个容器的生命周期内只创建一这一个bean,是单例的,在程序种无论获取多少次这个bean返回的都是同一个bean,并且在容器启动的时候就会创建…
ByeService.java package com.service; public class ByeService { public String sayBye() { return "byebye"; } }   UserService.java package com.service; public class UserService { private String name; private ByeService byeService; public String get…
1.XML配置的Bean自动装配 SpringIOC容器可以自动装配Bean,需要做的仅仅是在<bean>的autowire属性里指定自动装配的模式,而不需要手工去指定要装配的Bean,autowire属性有两个值byName和byType,分别对应按照名称装配和按照类型装配. —byName:根据bean的名字和bean setter风格的属性名进行自动装配,若有匹配的则进行装配,如果没有则不进行装配 —byType:根据bean的类型进行装配,如果有一个以上该类型的bean那么就会报错.…
1.普通bean是用id标志,context.getBean时传入名称即可获得. <bean id="p" class="com.Person"/> 2.通过alias给bean命别名. <bean id="p" class="com.Person"/> <alias name="p" alias="palias"/> 3.注解在Bean括号中写上名字…
@Configuration public class Config1 { @Bean() public Person getP(){ Person p = new Person(); p.setName("config1 person"); return p; } } public class Config2 { @Bean() public Person getP(){ Person p = new Person(); p.setName("config2 person&…