spring学习之---高级依赖关系配置
来源:互联网 发布:淘宝 智能代理技术 编辑:程序博客网 时间:2024/04/29 05:13
spring框架的功能是:它可以让开发者无须书写Java代码就可进行Java编程,当开发者XML采用合适语法进行配置之后,spring就可通过反射在底层执行任意的Java代码。
1.获取其他Bean的属性值
PropertyPathFactoryBean用来获取目标Bean的属性值(实际上就是它的getter方法的返回值)。
- 调用哪个对象:setTargetObject(Object targetObject)方法指定。
- 调用哪个getter方法:setPropertyPath(Strung propertyPath)方法指定。
<bean id="person" class=""> <property name="age" value="30"/> <property name="son"> <bean class=""> <property name="age" value="11"/> </bean> </property> </bean> <bean id="son1" class="org.springframework.beans.factory.config.PropertyPathFactoryBean"> <!--指定了获取person的getSon()方法的返回值,该返回值直接定义成容器中的son1--> <property name="targetBeanName" value="person"/> <property name="propertyPath" value="son"/> </bean>
目标Bean既可以是容器中已有的Bean实例,也可以是嵌套Bean实例。
<util:property-path.../>
元素可作为PropertyPathFactoryBean的简化:
- id:该属性指定将getter方法的返回值定义成名为id的Bean实例。
- path:该属性指定将哪个Bean实例、哪个属性(支持复合属性)暴露出来。
2.获取Field值
通过FieldRetrievingFactoryBean类,可访问类的静态Field或对象的实例Field值。
1. 调用哪个类。由setTargetClass(String targetClass)方法指定。
2. 访问哪个Field。由setTargetField(String targetField)方法指定。
该类还提供了一个setStaticField(String staticField)方法,该方法可同时指定获取哪个类的哪个静态Field值。
使用方式和上述基本一样。
<util:constant.../>
元素简化配置:
- id:该属性指定将静态Field的值定义成名为id的Bean实例。
- static-field:该属性指定访问哪个类的哪个静态Field。
3.获取方法的返回值
通过MethodInvokingFactoryBean工厂Bean,可调用任意类的类方法,也可调用任意对象的实例方法,如果调用的方法有返回值,则既可将该指定方法的返回值定义成容器中的Bean,也可将指定方法的返回值注入其他Bean。
1. 调用哪个类:setTargetClass(String targetClass)方法指定。
2. 调用哪个方法:setTargetMehod(String targetMethod)方法指定。
3. 调用方法参数:setArguments(Object[] arguments)方法指定。
Spring框架的本质其实就是通过XML配置来执行Java代码,因此几乎可以把所有的Java代码放到spring配置文件中管理。
- 调用构造器创建对象,用
<bean.../>
元素。 - 调用setter方法,用
<property.../>
元素。 - 调用getter方法,用PropertyPathFactoryBean。
- 调用普通方法,用MethodInvokingFactoryBean。
- 获取Field的值,用FieldRetrievingFactoryBean。
- spring学习之---高级依赖关系配置
- Spring框架学习之高级依赖关系配置(一)
- Spring框架学习之高级依赖关系配置(一)
- Spring框架学习之高级依赖关系配置(二)
- Spring 的高级依赖关系配置
- Spring学习之——依赖关系和配置细节(一)
- Spring学习之——依赖关系和配置细节(二)
- Spring学习之——依赖关系和配置细节(三)
- Spring学习之——依赖关系和配置细节(四)
- Spring依赖关系配置(续)
- Spring依赖关系的配置
- Spring记录之Bean属性配置、依赖关系及生命周期
- Spring之对象依赖关系
- Spring之配置依赖
- Spring-----10、深入理解依赖关系配置
- Spring之依赖配置详解
- Spring之对象依赖关系(依赖注入Dependency Injection)
- 【跟我学spring 4.0 】之第五节-配置bean之间的关系:继承、依赖
- Springboot Redis分布式集群(2)- 搭建工程引入redis
- VMware虚拟机安装
- 大型网站技术架构:核心原理与案例分析pdf
- Unity GC优化学习(二):Unity内存管理
- 文件管理的常用命令
- spring学习之---高级依赖关系配置
- 可喜可贺,编译chromium成功了
- 牛客网---2016---华为简单错误记录
- Jquery要注意的问题
- MySql开启批处理加快响应速度
- ubuntu16.04 samba服务器搭建
- 文章标题
- Linux基本命令
- 正则表达式