mouse5s306 2009-01-15 22:56
浏览 262
已采纳

请教下,spring中如何实例化这个bean

我有这样一个方法

package mytest;
public class TestImpl extends AbstractTest implements TestIfc{
public void handler() {
    // TODO Auto-generated method stub      
}

@Override
public void test() {
    // TODO Auto-generated method stub      
}

}



public abstract class AbstractTest {

public abstract void test();

}



public interface TestIfc {

public void hander();

}





spring配置文件




<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:tx="http://www.springframework.org/schema/tx"
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:jee="http://www.springframework.org/schema/jee"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd
http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-2.5.xsd
">
&lt;bean id="test" class="mytest.TestImpl" 

&gt;

</beans>









我如何实例化bean test

来调用方法 test()

谢谢




问题补充:
谢谢各位。



问题补充



我使用

ClassPathXmlApplicationContext c = new ClassPathXmlApplicationContext("application.xml");

TestImpl test = (TestImpl)c.getBean(test);

会有 java.lang.ClassCastException
spring默认使用的是jdk的动态代理 ,必须要以下操作才可以

TestIfc test = (TestIfc)c.getBean(test);
使用这个获取到bean不会有问题,但这样我就无法调用 方法 test() 了。





  • 写回答

6条回答 默认 最新

  • bohemia 2009-01-16 08:59
    关注

    [quote]public abstract class AbstractTest {

    public abstract void test();   
    

    } [/quote]

    没存在的必要; 面向接口;才是该做的.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(5条)

报告相同问题?

悬赏问题

  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条
  • ¥15 LiBeAs的带隙等于0.997eV,计算阴离子的N和P
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘
  • ¥15 来真人,不要ai!matlab有关常微分方程的问题求解决,
  • ¥15 perl MISA分析p3_in脚本出错
  • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
  • ¥15 ubuntu虚拟机打包apk错误
  • ¥199 rust编程架构设计的方案 有偿
  • ¥15 回答4f系统的像差计算