我正在尝试使用Spring在我的WEB-INF / classes文件夹下获取一个文件。
<bean id="myBean" class="path.to.MyBean" >
<property name="myFile">
<value>file:WEB-INF/classes/myFile.foo</value>
</property>
</bean>
但是,当我从MyBean中打印出myFile的文件路径时,它是:
c:\\apache\bin\WEB-INF\classes\myFile.foo
所以它没有使用相对部署路径。
我做错了吗?
答案 0 :(得分:1)
尝试:
<value>classpath:WEB-INF/classes/myFile.foo</value>
或
<value>classpath:myFile.foo</value>
答案 1 :(得分:0)
使用:
<property name="myFile" value="/myFile.foo"/>
和使用以下方式阅读:
InputStream is = getClass().getResourceAsStream(myFile);
myFile
是String
。
另一种方法是将文件存储在与MyBean
(/WEB-INF/classes/path/to/myFile.foo
)包相同的目录中,并按以下方式读取它:
<property name="myFile" value="myFile.foo"/>
注意没有前导/
- 路径相对于当前类(getClass()
调用)。