本文主要是介绍Solon Web 文件上传的最佳实践,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
文件上传是 Web 开发中最常见的一个应用场景。一般在处理数据时,会有两种常见的方案:直接把文件流放在内存里,或者把文件流先缓冲到磁盘。
1、如果是高频且文件极小
使用纯内存模式,默认即可。如果高频小文件,是不适合用“临时文件模式”的,磁盘可能容易刷坏。只能多配些内存!
2、如果是低频或者文件很大
建议使用“临时文件模式”。即上传的数据流,先缓存为临时文件(落盘),再以本地文件流形式提供使用。这个非常省内存。比如,上传 1GB 的文件,服务内存几乎不会上升。
- 添加配置
使用临时文件需要通过配置开启
server.request.useTempfile: true #默认 false
- 用后主动删除(建议,不管有没有用“临时文件模式”都主动删除)
使用完后,注意要删掉
@Controller
public class DemoController{@Post@Mapping("/upload")public void upload(UploadedFile file) { try{file.transferTo(new File("/demo/user/logo.jpg")); } finally {file.delete();}}
}
这篇关于Solon Web 文件上传的最佳实践的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!