[英]ByteArrayResource usage
我有一個模板pdf,它存儲在物理路徑或應用程序類路徑中。 我必須閱讀此模板,並根據每個請求的用戶輸入填寫每個請求的字段。 我想將此文件轉換為字節,並在應用程序啟動期間將其存儲在Configuration bean中,而不是每次讀取模板文件。 為此,我可以在Spring中使用ByteArrayResource或其他更好的方法。
我的目標不是每次都讀取模板文件。
是的,如果您經常需要緩存模板字節數組,絕對是個好主意。 但是請注意,這將通過文件大小增加內存使用量。
使用spring的ByteArrayResource可能是一個很好的方法,具體取決於您用於處理模板的內容。 ByteArrayResource的getInputStream()方法將始終為您提供新鮮的ByteArrayInputStream
您可以提供具有以下內容的ByteArrayResource bean:
@Bean
public ByteArrayResource infomailTemplate(@Value("classpath:infomail-template.html") Resource template) throws IOException {
byte[] templateContent = org.springframework.util.FileCopyUtils.copyToByteArray(template.getFile());
return new ByteArrayResource(templateContent);
}
然后只需將其自動布線即可 ,然后在您喜歡的任何地方,如下所示:
@Autowired
private ByteArrayResource infomailTemplate
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.