using classpath: in spring

У меня есть два вопроса относительно параметра classpath: весной: -

1) Выполняет ли classpath: поиск ресурса относительно документа в какой он указан (в случае веб-приложений)?

Предположим, я использую следующее:

<bean class="mybean">
<property name="myresource" value="classpath:myfile.txt"/>
</bean>

в myconfig.xml в разделе /WEB-INF/classes/config/myconfig.xml . Тогда откуда он начнет свой поиск?

2) Будет ли поиск быстрее, если я укажу прямое местоположение ресурса вместо того, чтобы указывать classpath: т.е.

<bean class="mybean">
<property name="myresource" value="classpath:/WEB-INF/classes/myfolder/myfile.txt"/>
</bean>

вместо

<bean class="mybean">
<property name="myresource" value="classpath:myfile.txt"/>
</bean>

Спасибо .. .

25
задан bakoyaro 12 February 2015 в 14:04
поделиться

1 ответ

Ищет ли classpath: ресурс относительно документа, в котором он указан (в случае веб-приложений)?

Нет, classpath: всегда относительно пути к классу корень. Если вы поставите / в начале пути, он будет удален без уведомления.

Будет ли поиск быстрее, если вместо этого я приведу прямое местоположение ресурса, например, classpath:/WEB-INF/classes/myfolder/myfile.txt

Нет, это не сработает вообще. Корень пути к классам содержит /WEB-INF/classes, поэтому путь должен быть относительно этого.

Не путайте classpath: пути с путями файлов, они не имеют никакого отношения друг к другу.

17
ответ дан 28 November 2019 в 21:52
поделиться
Другие вопросы по тегам:

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