关于spring配置文件的问题。

icewater_q 2012-12-27 09:24:24
NaiveWaiter继承Waiter接口
配置文件内容是:
<aop:aspectj-autoproxy />
<bean id="waiter" class="com.baobaotao.NaiveWaiter"/>
<bean class="com.baobaotao.aspectj.aspectj.PreGreetingAspect"/>

测试代码是:
String configPath="com/baobaotao/aspectj/aspectj/AspectJProxyXML.xml";
ApplicationContext ctx=new ClassPathXmlApplicationContext(configPath);
Waiter temp=(Waiter)ctx.getBean("waiter");

为什么测试代码的第三行一定要返回Waiter类型呢? 为什么不能用NaiveWaiter类型。
而且Waiter类型不是一个接口嘛?
...全文
114 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
yelp 2012-12-28
  • 打赏
  • 举报
回复
jdk代理的是接口,返回的类型看你注入的bean
dxqrr 2012-12-28
  • 打赏
  • 举报
回复
NaiveWaitertemp=(NaiveWaiter)ctx.getBean("waiter"); 这样不行?
Inmethetiger 2012-12-28
  • 打赏
  • 举报
回复
本人测试:以下情况都可以: Waiter temp = ctx.getBean("waiter",Waiter.class); //得到接口的实现类。即配置的那个bean NaiveWaiter temp = ctx.getBean("waiter",NaiveWaiter.class); NaiveWaiter temp = (NaiveWaiter) ctx.getBean("waiter"); 不过之前也遇到过这样的情况。
icewater_q 2012-12-27
  • 打赏
  • 举报
回复
自顶一记!怒定!

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧