Author: Aleksandr Barmin

  • Внедрение зависимостей через свойства

    В предыдущей статье мы рассмотрели внедрение зависимостей через конструктор, теперь рассмотрим внедрение зависимостей через свойства. Структура проекта:

  • Внедрение зависимостей через конструктор

    Внедрение зависимостей – подход, при котором одни объекты декларативно определяют свои зависимости от других объектов. При данном подходе зависимости не создаются вручную, а предоставляются контейнером. Есть два подхода к внедрению зависимостей – через конструктор и через свойства. Сначала рассмотрим внедрение через свойства. Добавляем spring-context в проект: <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>LATEST</version> </dependency>

  • Создание экземпляров Java bean-ов

    Spring Framework поддерживает три способа создания бинов: создание бинов как стандартных объектов через конструктор; создание бинов через статический метод того же класса, что и бин; создание бинов через отдельную фабрику.

  • Именование java bean-ов

    Каждый java-бин в приложении может иметь один или более идентификаторов. Идентификаторы указываются при описании бинов в конфигурационных файлах: <bean id=”helloWorldService” class=”ru.mydesignstudio.spring.core.ioc.services.HelloWorldService”> </bean> Здесь свойство idуказывает уникальный идентификатор бина в рамках всего приложения. По этому идентификатору бин может быть получен через ApplicationContext HelloWorldService helloWorldService = context.getBean(“helloWorldService”, HelloWorldService.class);

  • Создание ApplicationContext

    Нам понадобится: Apache Maven Spring Framework Добавляем spring-context в зависимости в pom.xml: <?xml version=”1.0″ encoding=”UTF-8″?> <project xmlns=”http://maven.apache.org/POM/4.0.0″ xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xsi:schemaLocation=”http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd”> <modelVersion>4.0.0</modelVersion> <groupId>ru.mydesignstudio.spring.core</groupId> <artifactId>ioc</artifactId> <version>1.0</version> <dependencies> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>LATEST</version> </dependency> </dependencies> </project>