如何解决名称不同但方法名称相同的Spring @Bean抛出Bean创建异常
新的春天。
我已经定义了 2 个 @Beans,每个 @Beans 具有唯一的名称,但具有相同的方法名称。其中一个 bean 没有被创建,并且没有抛出有效的 bean 异常。
@Bean("Example.A")
public ClassA getNewBean() {
return new ClassA();
}
@Bean("Example.B")
public ClassA getNewBean() {
return new ClassA();
}
第二个 Bean 没有被创建并且抛出异常,因为 ClassA 不存在有效的 Bean。
This post 在不同的类中有两个 bean,而在我的情况下,它们都在同一个 @Configuration 中。
解决方法
当您通过 bean name 注入时,您可以使用 @Resource
:
@Controller
public class MyController {
@Resource(name = "Example.A")
private ClassA obj;
// ...
}
顺便说一句,bean 应该用 Java standard convention 命名。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。