Методики «Inversion of Control» и «Dependency Injection». Применение в Spring. Малышкин Фёдор ([email protected]) 27 июня 2008
Содержание
- 2. Основы. IoC. Концепция, лежащая в основе инверсии управления, часто выражается "голливудским принципом": "Не звоните мне, я
- 3. Основы. DI В самом названии закладывается смысл – зависимости не создаются вашим кодом: они внедряются контейнером.
- 4. Зависимости. Класс А Класс Б Класс А Класс Б Поля, параметры Наследование, реализация Класс А Класс
- 5. Пример 1. Login Manager. public class LoginManager { private UserList myUserList = new UserList(); ..... public
- 6. Пример 1. Недостатки. Если захочется каким-то образом изменить способ хранения пользователей, например, использовать базу данных или
- 7. Пример 1. Улучшения. public interface UserStorage { User getUserByName(String theUserName); } public class UserList implements UserStorage
- 8. Пример 1. UML. Начальная диаграмма классов.
- 9. Пример 1. UML. Диаграмма классов с вынесением зависимости.
- 10. Пример 1. Итоги. Итак, мы имеем прекрасные переносимые компоненты LoginManager, UserList, JdbcUserStorage, LdapUserStorage. Не стоит думать,
- 11. Сборка. Для использования созданных нами компонентов необходим некий класс RuntimeAssembler, который будет делать грязную работу по
- 12. Пример 2. Сборщик (Composer, Assembler). public final class SimpleSystemAssembler { public void main(String[] args) { LoginManager
- 13. Пример 2. UML.
- 14. Сборка. Итоги. RuntimeAssembler-классы не предназначены для повторного использования или наследования от них. В больших системах эти
- 15. Service Locator Альтернативой паттерну вынесения зависимости (Dependency Injection) является паттерн Service Locator. Он широко используется в
- 16. Пример 3. Service Locator // Service Locator public LoginManager() { myUserList = ServiceLocator.getUserStorage(); }
- 17. Пример 3. UML.
- 18. Пример 3. Итоги Очевидно, что в паттерне ServiceLocator есть зависимость между LoginManager и ServiceLocator, в то
- 19. Spring SpringFramework Spring Framework представляет собой набор готовых решений для использования всех основных Enterpise Java технологий
- 20. Spring. Элементы.
- 21. Пример 4. Spring Container. XML файл контейнера может быть таким: Sergei
- 22. Пример 4. Spring Container. public class HelloWorldImpl { private String myMessage; public void setMessage(String theMessage) {
- 23. Создание объектов В приведенном примере за конструирование объекта helloWorld отвечает контейнер – атрибут class элемента bean
- 24. Конструктор без параметра ....
- 25. Конструктор с параметрами 1
- 26. Фабричный метод 1
- 27. Фабрика классов 1
- 28. Установка зависимостей и свойств Возникает вопрос: "Какие типы данных могут быть установлены при помощи элемента property?",
- 29. Установка зависимостей и свойств java.util.Properties – задается элементом props, отдельные свойства добавляются при помощи вложенного элемента
- 31. Скачать презентацию




























Презентация на тему Логические задачи 1 класс
Братья Райт
Анализ микробиоты кишечника и экспресс-диагностика острых кишечных инфекций методом ПЦР
Жизнь луга
Фрукты и ягоды (7 класс)
Если хочешь быть здоров, закаливайся
Методы личной работы как важнейшее условие эффективной деятельности рукуводителя
От Лисабона до Мадрида
Экстремизм
ВНУТРЕННЯЯ ЭНЕРГИЯ.ПЕРВЫЙ ЗАКОН ТЕРМОДИНАМИКИ.
Топливно-энергетический комплекс (ТЭК), его значение и проблемы
Чайный клуб Гармония. Меню. Чаи и аксессуары
Азбука
Принцип выставления задачи по реализации ассортимента MUST в торговые точки
Кадровый резерв организации 4 (2)
ПРОЕКТ:
Международный день спорта на благо развития и мира в рамках ЮНЕСКО
Первый театр в России
Складской Комплекс «Новинская,2»
ЧЕЛОВЕКВОДАЗДОРОВЬЕ
Оптимизация бизнес-процессов и организация управления сетью клиентоориентированного банка
Курс лекций по дисциплине Экология
Модуль 9. Оценка эффективности управленческих решений
ФИНАНСОВЫЙ ОТЧЕТ ГИМНАЗИИ 1518
Автоматическое стрелковое оружие
Cristmas words
Каким будет рынок ECM-решений в 2008 году? Будущее ECM-решений
Строение текста. Стили речи