猿问

spring的getbean方法返回的是object类型,为什么不能用类来接收

TestBiz biz = (TestBiz) ctx.getBean("testBiz"); 这句报错类型转换错误,用ITestBiz接就没问题
下面的是spring配置文件,其中NewDao是TestBiz继承自的接口ITestBiz的实现类
	<bean id="testDao" class="dao.NewDao"></bean>
	
	<bean id="testBiz" class="biz.TestBiz" scope="singleton">
<!-- 		<property name="dao"> -->
<!-- 			<ref bean="testDao"/> -->
<!-- 		</property> -->

		<constructor-arg index="0">
			<ref bean="testDao"/>
		</constructor-arg>
		<constructor-arg index="1" type="java.lang.String">
			<value>123</value>
 		</constructor-arg>

	</bean>


fenkapian
浏览 3917回答 1
1回答

HansonQ

估计是你没有注意到。他是可以的,其实容器你可以理解为是一个map<String,Objct> 其中的key 就是你写的id value就是一个Object。想直接获取的话可以使用getBean的重载方法,getBean(String args0,Class clazz);TestBiz biz = ctx.getBean("testBiz",TestBiz.class);
随时随地看视频慕课网APP

相关分类

Java
我要回答