我有两个名为PowerUserManagerand的服务 bean SimpleUserManager。两个@Service带注释的类有大约20% 的共同代码。
我用一个通用抽象类 ( BaseUserManager) 构建了一个继承树,以减少两个类之间的冗余。
BaseUserManager
|
---------------
| |
PowerUserManager SimpleUserManager
然后在我的@Controller或任何客户端类中,我使用@Autowired注释来注入两者PowerUserManager,SimpleUserManager并且我根据我正在处理的用户实例使用其中一个。
我不习惯使用继承来分解代码,尤其是在服务层中。你们春天的伙伴们有没有更好的方法来做到这一点?