首页 > 解决方案 > 带接口的 Spring 框架设计

问题描述

我有一个设计如下的 Java Spring 应用程序:

public interface A{
  method A;
  method B;
}

Class ACon implements A{

}

public interface B{
  method A;
  method B;
}

Class BCon implements B{

}

现在我有 2 种常见的方法 - 比如说 methX 和 methY,它们对于 ACon 和 BCon 类都是通用的。它们都使用相同的 Autowired 实例。我怎样才能适应 methX 和 methY 而不在 ACon 和 BCon 中重复?

标签: javaspring

解决方案


为方法创建一个具有“通用”实现的基类,并确保 ACon 和 BCon 扩展了基类:

class BaseCon {
    public void methodX (){
    ...
    }

    public void methodY (){
    ...
    }
}

class ACon  extends BaseCon implements A{
...
}

class ACon  extends BaseCon implements A{
...
}

推荐阅读