0 added
0 removed
Original
2026-01-01
Modified
2026-03-10
1
<p>Теги: spring, спринг, been</p>
1
<p>Теги: spring, спринг, been</p>
2
<p>Термин "бин" используется в Spring для ссылки на любой компонент, который управляется контейнером. То есть бины - это объекты, являющиеся основой приложения и управляемые Spring IoC-контейнером. Как правило, на определенном уровне бины придерживаются спецификации<strong>JavaBean</strong>, однако это необязательно, особенно когда для связывания бинов друг с другом разработчик планирует использовать Constructor Injection.</p>
2
<p>Термин "бин" используется в Spring для ссылки на любой компонент, который управляется контейнером. То есть бины - это объекты, являющиеся основой приложения и управляемые Spring IoC-контейнером. Как правило, на определенном уровне бины придерживаются спецификации<strong>JavaBean</strong>, однако это необязательно, особенно когда для связывания бинов друг с другом разработчик планирует использовать Constructor Injection.</p>
3
<p>Чтобы получить экземпляр бина, применяют ApplicationContext. При этом IoC-контейнер управляет жизненным циклом бина, а также областью видимости и внедрением.</p>
3
<p>Чтобы получить экземпляр бина, применяют ApplicationContext. При этом IoC-контейнер управляет жизненным циклом бина, а также областью видимости и внедрением.</p>
4
<p>Если говорить о конфигурационном файле Spring Bean, то он имеет особое значение. В частности, он определяет все бины, которые будут инициализированы в Spring Context. При этом в процессе создания экземпляра Spring ApplicationContext конфигурационный xml-файл будет прочитан, следовательно, будут выполнены необходимые инициализации, указанные в этом файле. Также в этом файле, отдельно от базовой конфигурации, могут быть настройки локализации, описания перехватчиков (interceptors) и прочее.</p>
4
<p>Если говорить о конфигурационном файле Spring Bean, то он имеет особое значение. В частности, он определяет все бины, которые будут инициализированы в Spring Context. При этом в процессе создания экземпляра Spring ApplicationContext конфигурационный xml-файл будет прочитан, следовательно, будут выполнены необходимые инициализации, указанные в этом файле. Также в этом файле, отдельно от базовой конфигурации, могут быть настройки локализации, описания перехватчиков (interceptors) и прочее.</p>
5
<p>Итак, существует ряд способов работы с классами в Spring Framework:</p>
5
<p>Итак, существует ряд способов работы с классами в Spring Framework:</p>
6
<ul><li>XML-конфигурация,</li>
6
<ul><li>XML-конфигурация,</li>
7
<li>Java based-конфигурация</li>
7
<li>Java based-конфигурация</li>
8
<li>конфигурация Annotation based.</li>
8
<li>конфигурация Annotation based.</li>
9
</ul><p>Давайте рассмотрим их чуть подробнее.</p>
9
</ul><p>Давайте рассмотрим их чуть подробнее.</p>
10
<h2>XML-конфигурация</h2>
10
<h2>XML-конфигурация</h2>
11
<h2>Java based-конфигурация</h2>
11
<h2>Java based-конфигурация</h2>
12
<p>В данном случае все настройки и указания бинов прописывают в Java-коде:</p>
12
<p>В данном случае все настройки и указания бинов прописывают в Java-коде:</p>
13
<p>При этом для извлечения бина из контекста применяют следующий подход:</p>
13
<p>При этом для извлечения бина из контекста применяют следующий подход:</p>
14
<h2>Annotation based-конфигурация</h2>
14
<h2>Annotation based-конфигурация</h2>
15
<p>Ее можно использовать внутри кода аннотации @Repository, @Component, @Service, @Controller, что делается для указания классов в качестве Spring-бинов. А для их поиска и управления контейнером в xml-файл прописывают следующую настройку:</p>
15
<p>Ее можно использовать внутри кода аннотации @Repository, @Component, @Service, @Controller, что делается для указания классов в качестве Spring-бинов. А для их поиска и управления контейнером в xml-файл прописывают следующую настройку:</p>
16
<p><em><a>Источник</a></em></p>
16
<p><em><a>Источник</a></em></p>
17
17