Java Spring AutoWire提供空指针异常
我有一个maven mutli模块项目:Java Spring AutoWire提供空指针异常,java,spring,maven,autowired,Java,Spring,Maven,Autowired,我有一个maven mutli模块项目: 计划 -项目道 -Projectx ProjectDAO使用spring+hibernate 在Projectx中,我尝试使用以下内容: public class TesMessage implements ITesMessage { @Autowired private IGlobal iGlobal; ... iGlobal.getSomeMethod(); } 。。在上面的代码中,我得到了空指针异常,我是否遗漏了什么 我的
- 计划 -项目道 -Projectx
spring+hibernate
在Projectx中,我尝试使用以下内容:
public class TesMessage implements ITesMessage {
@Autowired
private IGlobal iGlobal;
...
iGlobal.getSomeMethod();
}
。。在上面的代码中,我得到了空指针异常,我是否遗漏了什么
我的appContext.xml中有这个
<context:component-scan base-package="com.test.nty.dal">
<context:include-filter type="annotation"
expression="org.springframework.stereotype.Repository" />
</context:component-scan>
谢谢相信例外:是的,你错过了什么 您不会显示如何注释
IGlobal
接口。例外情况表明它不在Spring的控制之下。您必须让Spring应用程序上下文处理其创建以及您的TextMessage
我会质疑这个设计。我不明白为什么每条短信都需要一些全球性的东西。对我来说,这似乎是一个单例瓶颈。显示您的应用程序上下文您可以将
TesMessage
类放入com.test.nty.dal
包中,并向其添加@Repository
注释吗?这两个类位于我的应用程序的不同模块中。在我的情况下,提议的设计会不会不起作用?TextMessage
在我的应用程序中只加载一次,因此与之无关。请解释一下是否可以做得更好:)我的IGlobal
是用@Repository
注释的。我不明白为什么每条短信都需要知道一个存储库。糟糕的设计-循环依赖等待发生,因为存储库需要了解TextMessage才能持久化它们。我会重新考虑的。