SpringMvc 上传文件问题(临时文件及 获取真正文件后缀)

本文探讨了在文件上传过程中,maxInMemorySize属性的作用及其影响。解释了该属性如何设定文件是否存入临时文件夹的阈值,低于此值文件将保存在内存中,高于此值则生成硬盘上的临时文件。

在上传文件时,其实在文件未上传至文件服务器之前,会在本机留下一个临时文件:

 

通过此临时文件,可以获取真正的文件后缀(为了防止强行改后缀导致的问题)

DiskFileItem fi = (DiskFileItem)file.getFileItem(); File result = fi.getStoreLocation(); Tika tika = new Tika(); try { String contentType = tika.detect(result); } catch (IOException e) { e.printStackTrace(); }

 

 

而有的时候却不会生成临时文件,这是因为什么原因呢?

 

经过查找,找到了这个属性:maxInMemorySize

 

在这里设置了文件放入临时文件夹的最小大小限制,那么这个属性到底还有什么作用呢?

 

查询得知:此为阈值,低于此值,则保存在内存中,如高于此值,则生成硬盘上的临时文件

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值