Spring学习(五)-Spring与Bean的关系
来源:互联网 发布:追求卓越 知乎 编辑:程序博客网 时间:2024/05/18 01:17
Spring与bean的关系总结:
1)使用autowire 自动装载:
可以使用autowire属性自动装载,byName根据bean的名字的setXx风格的属性名自动装配,有的自动装配,没有的不装配 byType根据bean的类型和当前bean的属性的类型自动装配,若IOC容器中有一个以上的类型匹配的bean,则匹配异常
缺点:要装配必须属性全装配,再者装配方式只能用一种
2)抽象bean:
bean:bean的abstract属性为true的bean 这样的bean不能被IOC容器实例化,
只能用来被继承 配置,若某一个bean的class属性没有指定,则该bean必须是一个抽象bean
3)bean配置的继承:
使用bean的parent属性指定继承那个bean的属性
4)关联bean:
要求配置Person时 必须有一个关联的car换句话说person这个bean依赖于Car的这个bean
1.bean2.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:context="http://www.springframework.org/schema/context"xmlns:util="http://www.springframework.org/schema/util"xmlns:p="http://www.springframework.org/schema/p"xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.0.xsdhttp://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-4.0.xsdhttp://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.0.xsd"><bean id="address" class="com.autowire.bean.Address" p:city="Beijing" p:street="HuiLongGuan"> </bean><bean id="car" class="com.autowire.bean.Car" p:brand="Audi" p:price="300000"></bean><!-- 可以使用autowire属性自动装载, byName根据bean的名字的setXx风格的属性名自动装配,有的自动装配,没有的不装配 byType根据bean的类型和当前bean的属性的类型自动装配,若IOC容器中有一个以上的类型匹配的bean,则匹配异常 缺点:要装配必须属性全装配,再者装配方式只能用一种--><!--抽象bean:bean的abstract属性为true的bean 这样的bean不能被IOC容器实例化, 只能用来被继承 配置,若某一个bean的class属性没有指定,则该bean必须是一个抽象bean--><bean id="person" class="com.autowire.bean.Person" p:name="Tom" p:address-ref="address" p:car-ref="car" abstract="true" > <!-- autowire="byName"--> <!-- p:address-ref="address" p:car-ref="car"--></bean><!-- bean配置的继承:使用bean的parent属性指定继承那个bean的属性 --><bean id="person2" class="com.autowire.bean.Person" p:name="Rose" parent="person"></bean><!-- 要求配置Person时 必须有一个关联的car换句话说person这个bean依赖于Car的这个bean --><bean id="person3" class="com.autowire.bean.Person" p:name="Jack" p:address-ref="address" depends-on="car"></bean</beans>
2.TestAutowire.java测试类
package com.autowire.bean;import org.springframework.context.ApplicationContext;import org.springframework.context.support.ClassPathXmlApplicationContext;public class TestAutowire { public static void main(String[] args) { @SuppressWarnings("resource") ApplicationContext ctx=new ClassPathXmlApplicationContext("springXML/bean2.xml"); /*Person person=(Person)ctx.getBean("person"); System.out.println(person); */ Person person2=(Person)ctx.getBean("person2"); System.out.println(person2); Person person3=(Person)ctx.getBean("person3"); System.out.println(person3); }}
阅读全文
0 0
- Spring学习(五)-Spring与Bean的关系
- Spring学习笔记(五)bean之间的关系与作用范围
- spring学习总结(五):IOC & DI 配置 Bean 之自动装配及bean之间的关系
- spring学习历程---bean之间的关系
- Spring学习笔记(11)------------bean之间的关系
- Spring学习(二十)Bean 的依赖关系介绍
- Spring框架学习(5):bean之间的关系
- Spring学习(3)--Bean之间的关系
- spring学习笔记(5)——bean的继承与依赖关系
- spring源码学习(五)Bean的加载(上)
- spring学习(五)ClassPathXmlApplicationContext的getBean获取实例bean
- Spring学习(五)-Bean的作用域
- Spring学习(五):自动化装配Bean
- Spring-7,bean的关系
- 【Spring】Bean之间的关系
- Spring Bean之间的关系
- Spring-bean之间的关系
- Spring学习第六天:Bean之间的关系
- 冒泡排序-->快速排序
- 小米Air 安装ubuntu16.04 填坑篇
- idea 配置tomcat
- ABAP程序中设置SM36后台JOB
- Android IPC、Binder和AIDL
- Spring学习(五)-Spring与Bean的关系
- 基础整理-注释
- P1018 乘积最大
- 怎样判断NaN
- 计算机视觉牛人博客和代码汇总(全)
- IDEA+Maven+Embedded Jetty+Jersey构建Restful服务并打包成jar包发布
- 百钱百鸡
- JAVA中IO同步、异步、阻塞、非阻塞
- sklearn、TensorFlow、keras模型保存与读取