У меня есть абстрактный класс AbstractService
, имеющий ссылку на AbstractDAO
class AbstractService{
protected AbstractDAO abstractDAO;
}
AbstractService
, который будет расширен фактическими классами обслуживания, такими как ServiceClassA
, ServiceClassB
и т. Д., И AbstractDAO
будет расширен на DaoClassA
, DaoClassB
и т. Д.
В зависимости от того, какой класс расширяется * AbstractService
, abstractDAO
должен быть экземпляром DaoClassA
, DaoClassB
и т. Д.
Я могу добиться этого с помощью установщика abstractDAO в расширяющем классе, например
class ServiceClassA{
@Autowired
@Qualifier("daoClassA")
public void setAbstractDAO(AbstractDAO abstractDAO) {
super.abstractDAO = abstractDAO;
}
}
. Есть ли способ установить сеттер setAbstractDAO
в самом классе AbstractService
, а abstractDAO
получит Autowired в зависимости отна подклассе может быть SPEL + Qualifier и т. д.
Мы не хотим использовать какую-либо конфигурацию XML для этого