java main方法中通过ApplicationContext去拿bean(用注解的bean)getbean拿不到?
注解类代码如下:
ApplicatonContext.xml配置如下:
main方法如下:
上面注释的是普通main方法,下面是junit测试,都拿不到。
如果userService通过xml配置在ApplicationContext中配置,这样是可以拿到的。
java main方法中通过ApplicationContext去拿bean(用注解的bean)getbean拿不到?
注解类代码如下:
ApplicatonContext.xml配置如下:
main方法如下:
上面注释的是普通main方法,下面是junit测试,都拿不到。
如果userService通过xml配置在ApplicationContext中配置,这样是可以拿到的。
junit里的代码有没有写对,需要手动去触发初始化, 写在before注解下。
public class EnterSearchServiceTest {
private IEnterService enterService;
@Before
public void init() {
ApplicationContext aCtx
= new FileSystemXmlApplicationContext(
new String[]{"classpath:applicationContext.xml"
,"classpath:mybatis-config.xml"});
IEnterService service = (IEnterService) aCtx.getBean("EnterService");
this.enterService = service;
}
1 回答2.5k 阅读✓ 已解决
2 回答1.7k 阅读
2 回答1.6k 阅读
2 回答1.3k 阅读
1 回答714 阅读✓ 已解决
1 回答1.2k 阅读
XML文件错了,没有你这种写法。
XML里直接写上
<context:component-scan base-package="com.springaop" />
就行,去掉<context:annotation-config>
</context:annotation-config>
。