TaleLin / lin-cms-spring-boot

🔨 基于SpringBoot的CMS/DMS/管理系统开发框架
http://doc.cms.talelin.com/
MIT License
904 stars 253 forks source link

fix issue #131 #214

Closed fuhaodev closed 3 years ago

fuhaodev commented 3 years ago

修复文件上传的bug #131

原理:将PreHandler重命名为UploadHandler,增加afterHandle回调,在文件上传到本地或云上成功之后,再去做存库的操作;重复上传操作和原来一样在preHandle中做判断

分析:开始考虑是加事务解决,但是上传是个比较耗时的操作,无疑会拉长事务的占用时间,是不可取的, 况且上传操作将异常catch了,通过返回boolean告知上传结果,事务也无法捕获,若要强行抛异常加事务也不符合源码的设计理念,因此将存库放到真正上传成功之后,个人觉得是比较合理的做法。