dependency-injection- все статьи тега


Точка использования инъекции зависимостей (и, если уж на то пошло, контейнера IoC) в LISP

Я прочитал эссе ESR под названием " Как стать хакером?"несколько лет назад (ссылку можно найти в моем профиле) Эрик и предложил изучать шепелявость. Ну, я изучаю LISP довольно долго, и мне это так нравится, что я решил написать веб-приложение, используя его. Поскольку я использую Spring в течение некоторого времени, я думаю, что это хорошая идея, чтобы написать развязанные компоненты и склеить их вместе с помощью контейнера IoC и инъекции depencency. Я сделал мощный поиск в google и оказалось, ...

Паттерн стратегии против инъекции зависимости

Чем отличается паттерн стратегии от инъекции зависимостей? То есть ниже то, что вы можете сделать с паттерном стратегии: class Foo{ private readonly ISortAlgo _sortAlgo; public Foo(ISortAlgo sortAlgo) { _sortAlgo = sortAlgo; } public void Sort() { _sortAlgo.sort(); } } С DI вы можете сделать то же самое, по существу у вас может быть конструктор, сеттер, интерфейс и т. д. инъекция. и это даст тот же эффект, что и стратегия паттерна. Я знаю, что DI-это также набор д ...

JUnit @BeforeClass нестатическая работа вокруг приложения Spring Boot

Аннотация JUnit @BeforeClass должна быть объявлена статической, если вы хотите, чтобы она выполнялась один раз перед всеми методами @Test. Однако это нельзя использовать с внедрением зависимостей. Я хочу очистить базу данных, которую я @Autowire с помощью Spring Boot, один раз перед запуском тестов JUnit. Я не могу @Autowire статические поля, поэтому мне нужно подумать о обходе. Есть идеи? ...

Как серверы приложений внедряются в частные поля?

Я видел этот вопрос Впрыснуть в частное, пакетное или публичное поле или предоставить сеттер? О том, как вручную вводить в аннотированные частные поля (способ добавления сеттеров или через конструктор) Но, дело в том, как сделать сервер приложений (как glassfish, axis2, jboss, ...) способен вводить в конечное частное поле (без добавления сеттеров или конструкторов к пользовательскому классу)? Цитируя процитированный вопрос: public SomeClass { @Inject private SomeResource resource; } ...

Один и тот же контроллер ресурсов Laravel для нескольких маршрутов

Я пытаюсь использовать признак в качестве typehint для моих контроллеров ресурсов Laravel. Метод контроллера: public function store(CreateCommentRequest $request, Commentable $commentable) , в котором Commentable является чертой типа, которую используют мои красноречивые модели. Признак Commentable выглядит так: namespace AppModelsMorphs; use AppComment; trait Commentable { /** * Get the model's comments. * * @return IlluminateDatabaseEloquentRelationsMorphMany ...

Google GIN AbstractGinModule & GWT.Создавать()

У меня есть класс, который расширяет AbstractGinModule Например: public class ClientModule extends AbstractGinModule { public ClientModule() { } @Override protected void configure() { ... ... bind(...class).annotatedWith(...).to(...class).in(Singleton.class); ... } } Идея, которая у меня есть, заключается в том, чтобы связать один класс с другим классом на основе значения, хранящегося в файле свойств. Например: Param содержит значение, полученное из файла свой ...

Почему мне нужен контейнер IoC, а не простой DI-код? [закрытый]

Я использую Инъекции Зависимостей (DI) на некоторое время, вводя либо в конструктор, либо в свойство, либо в метод. Я никогда не чувствовал необходимости использовать инверсия управления (IoC) контейнер. Тем не менее, чем больше я читаю, тем больше давления я чувствую от сообщества, чтобы использовать контейнер МОК. Я играл с контейнерами .NET, как StructureMap,NInject,единство и Funq. Я все еще не могу посмотрите, как контейнер IoC принесет пользу / улучшит мой код. Я тоже боюсь начать ис ...

@Resource vs @Autowired

которые Примечания @ Resource ( jsr250) или @Autowired (Spring-specific) должен ли я использовать в DI? я успешно использовал как в прошлом @Resource(name="blah") и @Autowired @Qualifier("blah") мой инстинкт заключается в том, чтобы придерживаться @Resource тег, так как он был ратифицирован людьми jsr. У кого есть сильные мысли по этому поводу? ...

Как я могу ввести значение свойства в Spring Bean, который был настроен с помощью аннотаций?

у меня есть куча весенних бобов, которые подобраны из classpath через аннотации, например @Repository("personDao") public class PersonDaoImpl extends AbstractDaoImpl implements PersonDao { // Implementation omitted } в весеннем XML-файле есть PropertyPlaceholderConfigurer определил: <bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> <property name="location" value="/WEB-INF/app.properties" /> </bean> Я ...

Мне нужна инъекция зависимости в NodeJS, или как бороться с ...?

в настоящее время я создаю некоторые экспериментальные проекты с nodejs. Я запрограммировал много веб-приложений Java EE с Spring и оценил легкость внедрения зависимостей там. теперь мне любопытно: как мне сделать инъекцию зависимостей с узлом? Или: мне это вообще нужно? Есть ли концепция замены, потому что стиль программирования отличается? Я говорю о простых вещах, как обмен объект подключения к базе данных, до сих пор, но я не нашел решение, которое меня удовлетворяет. ...

Внедрение зависимостей через конструктор или сеттер собственность?

Я рефакторинг класса и добавление новой зависимости к нему. В настоящее время класс принимает свои существующие зависимости в конструкторе. Поэтому для согласованности я добавляю параметр в конструктор. Конечно, есть несколько подклассов плюс еще больше для модульных тестов, поэтому теперь я играю в игру, изменяя все конструкторы, чтобы соответствовать, и это занимает годы. Это заставляет меня думать, что использование свойств с сеттерами является лучшим способом получения зависимостей. Я не дум ...

ContextLoaderListener или нет?

стандартное веб-приложение spring (созданное Roo или шаблоном "Spring MVC Project") создает веб.xml с ContextLoaderListener и DispatcherServlet. почему они не используют только DispatcherServlet и сделать это, чтобы загрузить полную конфигурацию? Я понимаю, что ContextLoaderListener должен использоваться для загрузки материала, который не является веб-релевантным, а DispatcherServlet используется для загрузки веб-релевантных материалов (контроллеры,...). И это приводит к двум контекстам: родите ...

ServiceLocator-это анти-паттерн?

недавно я читал Марк Зееман-х о службе локатора анти-шаблон. автор указывает на две основные причины, по которым ServiceLocator является анти-шаблоном: проблема использования API (что меня вполне устраивает) Когда класс использует локатор служб, очень трудно увидеть его зависимости, поскольку в большинстве случаев класс имеет только один конструктор без параметров. В отличие от ServiceLocator, DI подход явное представление зависимостей через параметры конструктора, поэтому зависимости легко у ...

Как внедрить зависимости в самовоспроизводящийся объект весной?

допустим, у нас есть класс: public class MyClass { @Autowired private AnotherBean anotherBean; } затем мы создали объект этого класса (или какой-то другой фреймворк создал экземпляр этого класса). MyClass obj = new MyClass(); можно ли по-прежнему вводить зависимости? Что-то вроде: applicationContext.injectDependencies(obj); (Я думаю, что Google Guice имеет что-то вроде этого) ...

Как передать значения конструктору в моей службе wcf?

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

Symfony 2 EntityManager инъекция в сервисе

Я создал свой собственный сервис, и мне нужно ввести doctrine EntityManager, но я этого не вижу __construct() вызывается на мой сервис, и инъекция не работает. вот код и конфиги: <?php namespace TestCommonBundleServices; use DoctrineORMEntityManager; class UserService { /** * * @var EntityManager */ protected $em; public function __constructor(EntityManager $entityManager) { var_dump($entityManager); exit(); // I've never saw it happe ...

Как настроить инъекцию зависимости кинжала с нуля в проекте Android?

Как использовать кинжал? Как настроить Dagger для работы в моем проекте Android? Я хотел бы использовать кинжал в моем проекте Android, но я нахожу его запутанным. EDIT: Dagger2 также выходит с 2015 04 15, и это еще более запутанно! [этот вопрос является "заглушкой", на которую я добавляю свой ответ, поскольку я узнал больше о Dagger1 и узнал больше о Dagger2. Этот вопрос скорее руководство а не "вопрос."] ...

Могу ли я передать параметры конструктора в метод Unity Resolve ()?

Я использую единство Microsoft для инъекции зависимостей, и я хочу сделать что-то вроде этого: IDataContext context = _unityContainer.Resolve<IDataContext>(); var repositoryA = _unityContainer.Resolve<IRepositoryA>(context); //Same instance of context var repositoryB = _unityContainer.Resolve<IRepositoryB>(context); //Same instance of context IDataContext context2 = _unityContainer.Resolve<IDataContext>(); //New instance var repositoryA2 = _unityContainer.Resolve<IR ...

Как обрабатывать инъекцию зависимостей в приложении WPF/MVVM

я запускаю новое настольное приложение, и я хочу построить его с помощью MVVM и WPF. Я также намерен использовать TDD. проблема в том, что я не знаю, как я должен использовать контейнер IoC для внедрения моих зависимостей от моего производственного кода. Предположим, у меня есть следующий класс и интерфейс: public interface IStorage { bool SaveFile(string content); } public class Storage : IStorage { public bool SaveFile(string content){ // Saves the file using StreamWriter ...

Как внедрить репозиторий в сервис в Symfony?

мне нужно ввести два объекта в ImageService. Один из них является экземпляром Repository/ImageRepository, который я получаю такой: $image_repository = $container->get('doctrine.odm.mongodb') ->getRepository('MycompanyMainBundle:Image'); Итак, как я могу заявить, что в моих услугах.в формате YML? Вот сервис: namespace MycompanyMainBundleServiceImage; use DoctrineODMMongoDBDocumentRepository; class ImageManager { private $manipulator; private $repository; public ...