roz*_*ner 19 java spring inject
所以我有这个
@Value("classpath:choice-test.html")
private Resource sampleHtml;
private String sampleHtmlData;
@Before
public void readFile() throws IOException {
    sampleHtmlData = IOUtils.toString(sampleHtml.getInputStream());
}
我想知道的是,是否可以不使用readFile()方法并将sampleHtmlData注入文件的内容.如果不是,我只需要忍受这个,但这将是一个很好的捷径.
Tom*_*icz 38
从技术上讲,你可以用XML和工厂bean和方法的笨拙组合来做到这一点.但是,为什么要使用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);
        }
    }
}
请注意,我还sampleHtml.getInputStream()使用try-with-resources惯用法关闭了返回的流.否则你会得到内存泄漏.
| 归档时间: | 
 | 
| 查看次数: | 17657 次 | 
| 最近记录: |