Методики «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. Скачать презентацию




























Стан електронів у атомі
Электронный микроскоп
Презентация на тему Иконография образа Пресвятой Богородицы
HOW OFTEN DO YOU EAT CAKES
Профильная комиссия экспертного совета Минздравсоцразвития «Урология»
Кот в пальто
Влияние изменения солнечной активностина напряженное состояние и геодинамику земной коры Урала Зубк
Проект по математике «Удивительное рядом»
AmadeusService Fee Manager
Улучшение технологического процесса изготовления шлангов ПЭ-32 SDR 18
Тест Местоимения
Многонациональные и однонациональные государства
Крещение (Богоявление)
Административное право
Жестокое обращение с детьми
Элементы песочной терапии на логопедических занятиях. Логопедическая служба ГОУ ЦО «Школа здоровья
Экологическое право
Реальность и фантазия в творчестве художника. 6 класс
Админская паранойя в быту или страшная криптографическая сказка для самых маленьких параноиков
Образы "Слова о полку Игореве"
Оборудование для измельчения и переработки шин
Структура и содержание образовательной деятельности
Анималистический жанр. 7 клас
Актив. Экономика и финансы проекта
Витамин Е
Информационная безопасность
Sustainable agriculture, forestry and fishery
Практическая № 37-38