Как реализовать внедрение зависимостей - PullRequest
0 голосов
/ 05 июня 2018

Я хотел бы спросить, можно ли реализовать шаблон внедрения зависимостей с моим текущим прикладным уровнем.

Мой прикладной уровень - ENDPOINT, SERVICE и DAO.Поэтому вопрос заключается в том, как я могу реализовать инжектор службы для конечной точки и инжектор dao для уровня службы?

Обратите внимание, что я не хочу использовать какую-либо инфраструктуру для этого, например,@ Введите аннотацию.

Спасибо!

1 Ответ

0 голосов
/ 05 июня 2018

Нечто подобное может быть тем, что вы ищете:

public class Endpoint {
    private Service service;
    public Endpoint() { }
    public void setService(Service service){
        this.service = service;
    }

    public void execute() {
          // ...
    }
    // ...
}

public class Service {
    private DAO dao;
    public Service() { }
    public void setDAO(DAO dao){
        this.dao = dao;
    }
    //.... 
}

public class DAO {
    public DAO() {}
    //...
}

public class Main {
    public static void main(String[] args) {
        // create class instances
        Endpoint e = new Endpoint();
        Service s = new Service();
        DAO d = new DAO();
        // Inject dependencies
        e.setService(s);
        s.setDAO(d);
        // run
        e.execute();
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...