有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java Spring框架和重写默认bean

我们有一个构建在spring之上的框架,我们希望让开发人员能够覆盖我们的默认bean。所以在我们的“自定义主题器”的例子中,(我希望我们没有自定义主题器),我们有一个接口,可以自动连接到主题bean中

我们怎样才能给用户实现相同接口的能力,并让bean自动连接到我们的themer类中,而不是默认的。假设接口是call NLSER,我们的默认实现是NLSERConcrete,那么最终用户/开发人员如何注入CustomerNLSER呢


共 (1) 个答案

  1. # 1 楼答案

    在XML中使用^{}注释或primary="true"bean属性。这是您的默认bean:

    @Service
    public class NLSERConcrete implements NLSER {//...
    
    //...in different class
    @Autowired
    private NLSER nlser;
    

    现在,如果开发者添加:

    @Service
    @Primary
    public class CustomerNLSER implements NLSER {//...
    

    对于类路径,Spring会选择它,在自动连接的过程中,它将是首选