Кинжал + Весна

Мы выбрали Dagger2 вместо spring в качестве фреймворка внедрения зависимостей в одном из штормовых приложений. У нас также есть устаревшее приложение на основе Spring MVC, которое использует часть кода из проекта dagger в многопроектной настройке gradle.

(Упрощенная) иерархия проекта выглядит так:

  1. : кинжал-ядро
  2. :storm-dagger (зависит от dagger-core)
  3. :spring-ui (зависит от dagger-core)

Поскольку и пружина, и кинжал имеют свои собственные способы начальной загрузки графа объектов, как лучше всего заставить #3 работать вместе? В настоящее время у нас есть фабричный класс @Component в spring-ui, который «обеспечивает» зависимости от dagger-core. И фабрика, и предоставленные классы затем определяются как бины Spring с использованием шаблона фабрики Spring (класс фабрики как фабричный бин с использованием фабричного метода, а другие предоставленные классы как фабричный метод фабричного бина). Есть лучший способ сделать это?


person robbin    schedule 14.09.2015    source источник
comment
Привет, Роббин. у меня аналогичная ситуация. Я хотел бы интегрировать dagger2 с spring. Если у вас есть время, пришлите мне письмо на [email protected], у меня есть несколько вопросов. Заранее спасибо.   -  person Maxim Kasyanov    schedule 01.03.2019


Ответы (1)


В настоящее время у нас есть фабричный класс @Component в spring-ui, который «обеспечивает» зависимости от dagger-core. И фабрика, и предоставленные классы затем определяются как бины Spring с использованием шаблона фабрики Spring (класс фабрики как фабричный бин с использованием фабричного метода, а другие предоставленные классы как фабричный метод фабричного бина).

person robbin    schedule 09.04.2018