spring开发 MethodInvokingFactoryBean的学习
来源:互联网 发布:局域网网络硬盘服务器 编辑:程序博客网 时间:2024/05/21 09:09
通过MethodInvokingFactoryBean工厂Bean,可以将指定方法返回值注入成为目标Bean的属性值,MethodInvokingFactoryBean用来获得指定方法的返回值,该方法可以是静态方法
也可以是实例方法。
获得的方法返回值既可以被注入到指定Bean实例的指定属性,也可以直接定义成Bean实例。
可以注入到静态方法:如:
<bean class="org.springframework.beans.factory.config.MethodInvokingFactoryBean"> <property name="staticMethod" value="org.apache.shiro.SecurityUtils.setSecurityManager" /> <property name="arguments" ref="securityManager" /></bean>
也可以是普通方法
举例:
<?xml version="1.0" encoding="GBK"?> <!-- Spring配置文件的根元素,使用spring-beans-3.0.xsd语义约束 --> <beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.springframework.org/schema/beans" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd"> <!-- 定义目标Bean,后面将会获取该Bean的方法返回值 --> <bean id="valueGenerator" class="com.b510.app.util.ValueGenerator"></bean> <!-- 定义dog1的bean --> <bean id="dog1" class="com.b510.service.impl.DogServiceBean"> <property name="age"> <bean class="org.springframework.beans.factory.config.MethodInvokingFactoryBean"> <!-- targetObject确定目标Bean,指定调用哪个Bean --> <property name="targetObject" ref="valueGenerator" /> <!-- targetMethod确定目标方法,指定调用目标Bean的哪个方法 --> <property name="targetMethod" value="getAgeValue" /> </bean> </property> </bean> <!-- 定义名为dog2的Bean --> <bean id="dog2" class="com.b510.service.impl.DogServiceBean"> <property name="age"> <bean class="org.springframework.beans.factory.config.MethodInvokingFactoryBean"> <!-- targetClass确定目标类,指定调用哪个类 --> <property name="targetClass" value="com.b510.app.util.ValueGenerator" /> <!-- targetMethod确定目标方法,指定调用目标class的哪个方法。 该方法必须是静态方法--> <property name="targetMethod" value="getAgeStaticValue"></property> </bean> </property> </bean> <!-- 将静态方法返回值直接定义成Bean --> <bean id="sysProps" class="org.springframework.beans.factory.config.MethodInvokingFactoryBean"> <!-- targetClass确定目标类,确定调用哪个类 --> <property name="targetClass" value="java.lang.System" /> <!-- targetMethod确定目标方法,确定调用目标class的哪个方法 该方法必须是静态方法--> <property name="targetMethod" value="getProperties" /> </bean> <!-- 将实例方法返回值直接定义成Bean --> <bean id="javaVersion" class="org.springframework.beans.factory.config.MethodInvokingFactoryBean"> <!-- targetObject确定目标Bean,确定调用哪个Bean --> <property name="targetObject" ref="sysProps" /> <!-- targetMethod确定目标方法,确定调用目标Bean的哪个方法 --> <property name="targetMethod" value="getProperty" /> <!-- 确定调用目标方法的参数 --> <property name="arguments"> <!-- list元素列出调用方法多个参数值 --> <list> <value>java.version</value> </list> </property> </bean> </beans>
转载地址:http://huangyunbin.iteye.com/blog/1560107
- spring开发 MethodInvokingFactoryBean的学习
- spring开发 MethodInvokingFactoryBean的学习
- spring开发 MethodInvokingFactoryBean的学习
- Spring 开发之MethodInvokingFactoryBean学习
- spring学习----MethodInvokingFactoryBean(二)
- spring --MethodInvokingFactoryBean 配置文件解析
- Spring中的MethodInvokingFactoryBean使用
- MethodInvokingFactoryBean的用法
- Spring MethodInvokingFactoryBean注入Method值
- spring MethodInvokingFactoryBean 的使用和了解,Spring 通过通过方法创建Bean的实例
- Spring实战之org.springframework.beans.factory.config.MethodInvokingFactoryBean
- Spring实战之org.springframework.beans.factory.config.MethodInvokingFactoryBean
- MethodInvokingFactoryBean使用配置
- 高级依赖配置 - MethodInvokingFactoryBean
- spring 学习笔记 使用pojo+xml的方式开发aop
- 国外用spring开发的开源系统值得学习
- SPring Hibernate 整合学习开发出现的错误
- Spring学习-14:Spring整合web开发
- Oracle的体系结构(二)物理存储结构
- clistView 中使用 所在controller里的参数(某一个类的实例)
- 为了在软件工程中获得成功,我们必须更像心理学家而不是工程师
- Zend Framework教程-Zend_Form
- 修改脚本开机自动运行程序
- spring开发 MethodInvokingFactoryBean的学习
- WaitCommEvent function
- linux shell 逻辑运算符、逻辑表达式详解
- Android210 uboot 调试(好)
- Android异步操作UI界面的四种方法
- 屌丝男的暑假
- (UIImage *)imageNamed
- Android开发中处理图片OOM的若干方法小结
- RTP协议分析