Excel下载耗时:查询结果转换Model缓慢
在Springboot JPA应用中,将查询结果转换为Model时出现耗时现象,且占用CPU一个核。
分析原因
通过分析CPU使用情况,发现一个线程(0x48a4)占用大量CPU资源。追踪该线程发现,耗时耗在System.identityHashCode方法上。进一步分析,发现是由于Model类中添加了@EqualsAndHashCode注解,导致在转换过程中进行大量的比较操作。
解决方法
针对这种情况,解决方法是将接收查询结果的类型改为Map,而不是直接转换为Model。然后,手动循环遍历Map中的数据,并将其转换为Model对象。这种方式避免了属性和注释的校验,从而减少了转换时间。
Model结构
提供的Model结构中使用@Excel注解对字段进行了属性映射。在转换过程中,会对这些属性进行校验,从而导致耗时增加。
以上就是SpringBoot JPA应用中Excel下载慢:如何优化Model转换过程?的详细内容,更多请关注图灵教育其它相关文章!