在 spring 基础项目中,我们要从classpath
文件位置加载文件,必须从spring el
表达式进行评估。
此功能目前在加载属性文件的 spring 中,位置可以是任何Spring EL
.
<util:properties id="samplePolicy"
location="classpath:/conf/#{environment.getActiveProfiles()[1]}
/sample.properties" />
这正是我们想要的,但不是加载属性文件,只是一个文本文件。
所以我们在下面尝试:
我们用ResourceLoader
@Autowired
private ResourceLoader resourceLoader;
//And then ....
resourceLoader.getResource("classpath:myfile.txt");
怎么resourceLoader.getResource("classpath:/conf/#{environment.getActiveProfiles()[1]}}/sample.txt")
也行不通。
似乎resourceLoader.getResource
没有解析 Spring EL。
虽然我们可以解析 EL,然后从资源加载器中获取文件,但我们想知道是否可以更轻松地完成,可能使用一些内置函数。