java:服务器上传文件删除问题

之前做过一个图片的CRUD功能。在删除测试的时候,数据库的资料被删除了。但上传到服务器的图片没有被删除。

一开始,我以为是我的删除方法写的有问题。但经过我几番测试,发现是上传完图片后资源没有释放,这个时候立即去删除图片是不能成功的,但数据库的资料会被删除

解决方法:

我在上传的方法中,在上传完后添加system.gc;调用java的垃圾回收机制来释放掉资源。但java的垃圾回收机制不是一调用就马上执行,所以也很有可能出现删除的时候,gc并未执行。这样,就需要将删除文件的代码放在删除数据库的代码前执行,一旦删除文件失败,将停止删除,将删除失败的信息提交前台页面,前台页面再用模态框显示提示信息。让用户等gc执行后,将该图片的资源释放掉再进行删除。

posted @ 2019-02-19 21:14  三只小菜鸟  阅读(1888)  评论(0编辑  收藏  举报