Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
1.7k views
in Technique[技术] by (71.8m points)

using classpath: in spring

I have two questions regarding classpath: option in spring :-

1) Does classpath: search for resource relative to the document in which it is specified(in case of web applications)?

Suppose I use the following:

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

in myconfig.xml under /WEB-INF/classes/config/myconfig.xml. Then from where it will start its search?

2)Is it faster to search if I give direct location of the resource instead of giving classpath: i.e

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

instead of

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

Thanks...

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

Does classpath: search for resource relative to the document in which it is specified(in case of web applications)?

No, classpath: is always relative to the classpath root. If you put a / at the start of the path, it is silently removed.

Is it more fast to search if i give direct location of resource instead e.g. classpath:/WEB-INF/classes/myfolder/myfile.txt

No, that won't work at all. The classpath root contains /WEB-INF/classes, so the path should be relative to that.

Don't confuse classpath: paths with file paths, they have no relation to each other.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...