spring bean 的配置-不同构造函数
来源:互联网 发布:年轻人不愿生了知乎 编辑:程序博客网 时间:2024/06/06 05:14
使用构造子注入时,则使用constructor-arg子标签,来指定构造函数的参数。
<bean id="provider" class="com.apress.prospring.ch4.ConfigurableMessageProvider">
<constructor-arg>
<value>This is a configurable message</value>
</constructor-arg>
</bean>
当构造函数有多个参数时,可以使用constructor-arg标签的index属性,index属性的值从0开始。
<bean id="provider" class="com.apress.prospring.ch4.ConfigurableMessageProvider">
<constructor-arg index="0">
<value>first parameter</value>
</constructor-arg> <constructor-arg index="1">
<value>second parameter</value>
</constructor-arg>
</bean>
在使用构造子注入时,需要注意的问题是要避免构造子冲突的情况发生。
考虑下面的情况:
public class ConstructorConfusion { public ConstructorConfusion(String someValue) {
System.out.println("ConstructorConfusion(String) called");
}
public ConstructorConfusion(int someValue) {
System.out.println("ConstructorConfusion(int) called"); }
}
使用如下配置文件
<bean id="constructorConfusion" class="com.apress.prospring.ch4.ConstructorConfusion">
<constructor-arg>
<value>90</value>
</constructor-arg>
</bean>
那么,当实例化组件constructorConfusion时,将输出ConstructorConfusion(String) called,也就是说参数类型为String的构造函数被调用了,这显然不符合我们的要求。
为了让Spring调用参数为int的构造函数来实例化组件constructorConfusion,我们需要在配置文件中明确的告诉Spring,需要使用哪个构造函数,这需要使用constructor-arg的type属性。
<bean id="constructorConfusion" class="com.apress.prospring.ch4.ConstructorConfusion">
<constructor-arg type="int">
<value>90</value>
</constructor-arg>
</bean>
- spring bean 的配置-不同构造函数
- spring bean 中构造函数
- Spring 中 bean 的不同配置方式的比较
- Spring 中Bean不同配置方式的比较--
- Spring学习之配置Bean几种不同的方式
- Spring bean的配置和构造过程总结
- Spring几种不同方式配置Bean
- Spring学习,Bean不同配置方式比较
- spring bean的配置
- Spring bean的配置
- spring-bean的配置
- spring 的 bean 配置
- 【Spring】Bean的配置
- Spring4.0 构造函数配置bean
- 2--spring bean 的作用域scope 设置;bean的初始化和销毁方法,profile配置不同环境实例化不同的bean,自定义事件,自定义监听器
- Spring 装配Bean的构造注入
- spring bean的构造器注入
- Spring 全注解配置 bean 和 调用 (2) @Profile 自适应不同的模式或环境中
- 正则表达式资料
- Android创建私钥并为APK文件签名的相关命令及图形化方式
- 博客搬家
- Handler总结
- Android使用ant对项目进行编译签名优化打包
- spring bean 的配置-不同构造函数
- SonicUI在MFC中的使用
- WebService Myeclipse Web Tomcat SOAP
- Socket 编程 小知识库
- 代码生成工具,代码生成器,三层架构生成神具,三层也是浮云
- mailto 重定向
- jquery
- 关于ioremap,request_mem_region(转)
- Android 多Activity下的 menu 处理