如何在不点击OutOfMemoryException的情况下向spring-boot+thymelaf模板显示大主体



我有一个应用程序正在转换为使用Spring Boot和Thymelaf。其中一个servlet从服务器上的日志文件中提取数据(该文件被开发人员锁定(,这样我们就可以诊断某些类型的故障。这些日志提取中的大多数都相对较小,但有些最终可能达到数十到数百兆字节。诚然,这是一种钝武器,但我并不想让它变得更聪明,只是想把它转移到新的框架中。

旧的jsp页面只是发出html来设置页面,然后运行一个grep/awk组合脚本并流式传输输出,最后用关闭的html完成。thymelaf模板的布局是一样的,但因为我使用的是@RestController,所以我正在收集日志抓取的输出,将其分配给模型参数。那是我遇到记忆力问题的时候。

问题是我应该怎么做?我讨厌放弃thymelaf模板,但对于这个页面来说,这并不是绝对必要的。它主要是给我买始终如一的造型。

您可以在控制器中创建一个类似Files.lines(Paths.get(logfileName((的日志文件流,并将流的迭代器放入模型中。Thymelaf可以使用th:aeach处理迭代器。

最新更新