簡體   English   中英

ByteArrayResource的用法

[英]ByteArrayResource usage

我有一個模板pdf,它存儲在物理路徑或應用程序類路徑中。 我必須閱讀此模板,並根據每個請求的用戶輸入填寫每個請求的字段。 我想將此文件轉換為字節,並在應用程序啟動期間將其存儲在Configuration bean中,而不是每次讀取模板文件。 為此,我可以在Spring中使用ByteArrayResource或其他更好的方法。

我的目標不是每次都讀取模板文件。

是的,如果您經常需要緩存模板字節數組,絕對是個好主意。 但是請注意,這將通過文件大小增加內存使用量。

使用spring的ByteArrayResource可能是一個很好的方法,具體取決於您用於處理模板的內容。 ByteArrayResourcegetInputStream()方法將始終為您提供新鮮的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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM