假设我在控制器中有这个
@Resource(name="registrationService")
private RegistrationService registrationService;
这很好用,我可以在服务类中使用方法。
现在假设我有不同的java类,我想在registrationService类中使用方法。所以我可以在那里使用相同的东西
@Resource(name="registrationService")
private RegistrationService registrationService;
和访问方法或我必须在春天用不同的名称声明不同的bean
这是Service class
中的函数public String test(){ return "testing"; }
现在,如果我在控制器中调用它,它可以正常工作。
但我有一个名为UserDAO的单独类用于获取用户。 如果我喜欢这个
private List internalDatabase(){
List<Registration> users = new ArrayList<Registration>();
Registration user = null;
logger.debug("Before");
logger.debug(registrationService.test());
logger.debug("After");
users.add(user);
return users;
}
之后的任何事情
logger.debug(registrationService.test());
未执行。如果我删除该行一切正常。我不知道这个问题是什么
答案 0 :(得分:1)
是的,您可以使用Spring将相同的bean注入两个不同的类中。
答案 1 :(得分:0)
我最好的猜测是在
上发生了NullPointerException logger.debug(registrationService.test());
这就是为什么没有执行后续行。 registrationService,我相信容器没有正确注入。确保在applicationContext.xml上正确定义了服务类,或者组件扫描中包含了该包。
确保UserDAO由Spring管理,或者有办法(如果没有)访问Spring管理的服务类。