如何使用spring表达式读取文件内容并将其放入字符串?
我想做以下事情。
例如,
@Value("classpath:myquery.sql")
File f;
@Value("#{org.apache.commons.io.FileUtils.readFileToString(f)}")
String sql;
甚至更好
@Value("#{FileUtils.readFileToString(classpath:myquery.sql)}")
String sql;
但是,上述代码都不起作用。
提到我使用的是Spring 3.2.0版本
感谢。
答案 0 :(得分:19)
终于得到了答案......
@Value("#{T(org.apache.commons.io.FileUtils).readFileToString(" +
"T(org.springframework.util.ResourceUtils).getFile('classpath:myquery.sql')" +
")}")
String sql;
现在,sql默认由classpath
下的myquery.sql的确切内容填充答案 1 :(得分:4)
有一个类似的问题回答here使用Java配置。
@Configuration
public class Spring {
@Value("classpath:choice-test.html")
private Resource sampleHtml;
@Bean
public String sampleHtmlData() {
try(InputStream is = sampleHtml.getInputStream()) {
return IOUtils.toString(is);
}
}
}