使用Spring在WEB-INF下获取文件

时间:2011-12-11 14:42:02

标签: spring file javabeans

我正在尝试使用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

所以它没有使用相对部署路径。

我做错了吗?

2 个答案:

答案 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);

myFileString

另一种方法是将文件存储在与MyBean/WEB-INF/classes/path/to/myFile.foo)包相同的目录中,并按以下方式读取它:

<property name="myFile" value="myFile.foo"/>

注意没有前导/ - 路径相对于当前类(getClass()调用)。