Различие в префиксе пути к классу Spring

Зарегистрированный здесь это указывает

Этот специальный префикс указывает, что все ресурсы пути к классу, которые соответствуют имени, должны быть получены (внутренне, это по существу происходит через ClassLoader.getResources (...) звонят), и затем объединенный для формирования заключительного определения контекста приложения.

Кто-то может объяснить это?

Каково различие между использованием classpath*:conf/appContext.xml в противоположность classpath:conf/appContext.xml без звездочки.

137
задан skaffman 20 July 2010 в 21:20
поделиться

2 ответа

ПРОСТОЕ ОПРЕДЕЛЕНИЕ

путь к классам *: conf / appContext.xml просто означает, что все файлы appContext.xml в папках conf во всех ваших jar-файлах в пути к классам будут взяты и объединены в один большой контекст приложения.

Напротив, classpath: conf / appContext.xml загрузит только один такой файл ... первый найденный в вашем пути к классам.

200
ответ дан 23 November 2019 в 23:33
поделиться

Синтаксис classpath *: ... полезен в первую очередь, когда вы хотите создать контекст приложения из нескольких файлов определения bean-компонентов с использованием синтаксиса подстановочных знаков.

Например, если вы создаете свой контекст, используя classpath *: appContext.xml , путь к классам будет просканирован для каждого ресурса с именем appContext.xml в пути к классам и bean-компонента определения из всех них объединены в единый контекст.

Напротив, classpath: conf / appContext.xml получит один и только один файл с именем appContext.xml из пути к классам. Если их несколько, остальные игнорируются.

38
ответ дан 23 November 2019 в 23:33
поделиться
Другие вопросы по тегам:

Похожие вопросы: