您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

如果所有类都不在同一个包中,Spring @autowired将不起作用

如果所有类都不在同一个包中,Spring @autowired将不起作用

你的结构应该是这样的

package com.spring.org.service;

public interface SubscriberService {

}

package com.spring.org.service;

@Component
@Qualifier("Subscriber")
public class SubscriberServiceImpl implements SubscriberService {

}

“ SubscriberServiceImpl1”是一个组件,它实现了“ SubscriberService”。

package com.spring.org.service;

@Component
@Qualifier("Subscriber1")
public class SubscriberServiceImpl1 implements SubscriberService {

}

我设置了一个Spring上下文,该上下文扫描这两个软件包中是否有标记为’@Component’的bean。

<annotation-driven />
<context:annotation-config />
<context:component-scan base-package="com.spring"/>

@Controller
public class HomeController {

    @Autowired
    @Qualifier("Subscriber")
    private SubscriberService subService;

}

从此 参考。希望这能够帮到你....

根据您的包结构,您的 类位于 包 只需使用 更改您的基本包,这将对您

<context:component-scan base-package="com.spring"/>
Java 2022/1/1 18:21:00 有552人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶