【发布时间】:2015-07-15 12:28:03
【问题描述】:
我有一个包含以下类的 Spring 项目:
- Reporting.java
- IPersistenceService.java
- PersistenceService.java(实现 IPersistenceService)并具有@service 注解
-
ReportingDAO.java:有方法 updateData()。 (新增)
在 Reporting.java 中有一个 main(String []args) 方法,我必须从中调用 Reporting.java 的 updateData()。
Reporting.java:
@autowired
IPersistenceService persistenceService;
public static void main(String []args)
{
ApplicationContext context = new ClassPathXMLApplicationContext(applicationContext.xml) // context has values populated in it.
persistenceService.updateData(); // I am getting persistenceService as null here.
}
IPersistenceService.java
public void updateData();
@service
PersistenceService.java (implements IPersistenceService)
public void updateData()
{
ReportingDAO reportingDao = new ReportingDAO ();
reportingDao.updateData();
}
问题是我无法从我的 main() 类方法中调用 updateData() 方法。因为我得到了 persistenceService 的空值。
我不确定要在 applicationContext.xml 中添加什么。
提前致谢。
【问题讨论】:
-
您的注释的大小写不正确,应该是 Autowired 和 Service。应用程序上下文是否设置了组件扫描?您应该包含 applicationcontext xml。此外,您的 ReportingDao 应该是 spring 管理的 bean。
标签: spring nullpointerexception main dao