Spring IoC контейнер: дополнительные возможности ApplicationContext, удобный доступ к низкоуровневым ресурсам
Контекст приложения - это ResourceLoader, который можно использовать для загрузки объектов Resource. Resource - это, по сути, более функциональная версия класса JDK java.net.URL. Фактически, реализации Resource оборачивают экземпляр java.net.URL, где это необходимо. Resource может прозрачным образом получать ресурсы низкого уровня практически из любого места, включая путь к классам, расположение файловой системы, любое место, описываемое стандартным URL-адресом, и некоторые другие варианты. Если строка местоположения ресурса представляет собой простой путь без каких-либо специальных префиксов, то источник этих ресурсов является конкретным и соответствует фактическому типу контекста приложения.
Вы можете настроить компонент, развернутый в контексте приложения, для реализации специального интерфейса обратного вызова, ResourceLoaderAware, который будет автоматически вызываться во время инициализации с самим контекстом приложения, переданным как ResourceLoader. Вы также можете предоставить свойства типа Resource, которые будут использоваться для доступа к статическим ресурсам. Они вводятся в него, как и любые другие свойства. Вы можете указать эти свойства ресурса как простые строковые пути и полагаться на автоматическое преобразование этих текстовых строк в фактические объекты ресурсов при развертывании компонента.
Путь или пути расположения, предоставленные конструктору ApplicationContext, на самом деле являются строками ресурсов и, в простой форме, обрабатываются соответствующим образом в соответствии с конкретной реализацией контекста. Например, ClassPathXmlApplicationContext обрабатывает простой путь расположения как расположение пути к классам. Вы также можете использовать пути расположения (строки ресурсов) со специальными префиксами для принудительной загрузки определений из пути к классам или URL-адреса, независимо от фактического типа контекста.
Читайте также:
- Spring IoC контейнер: дополнительные возможности ApplicationContext, слушатели событий на основе аннотаций
- Spring IoC контейнер: дополнительные возможности ApplicationContext, асинхронные слушатели, упорядочивание слушателей
- Spring IoC контейнер: дополнительные возможности ApplicationContext, стандартные и специальные события
Комментарии
Отправить комментарий