开发者社区> 问答> 正文

JFinal上传多个文件保存路径问题 : 配置报错 

前台上传多个文件,后台分别用getFile处理时,文件保存路径将以第一个处理的文件路径为准,比如第一个文件的处理方法是:
UploadFile upZipFile = null; try{

upZipFile = this.getFile("article.zipFile", "files/"+sdf.format(new Date()),102410241024,"UTF-8");

}catch(Exception e){

e.printStackTrace();

}

  第二个文件的处理方法是:

UploadFile upImgFile = null;

try{

upImgFile = this.getFile("article.img", "pic/"+sdf.format(new Date()),102410241024,"UTF-8");

}catch(Exception e){

e.printStackTrace();

}
得到结果是文件都被上传到了upload/files/路径下,第二个文件指定的pic/路径将无效,不管指定的路径是否相对路径都有这个问题。

展开
收起
kun坤 2020-06-03 16:14:32 600 0
1 条回答
写回答
取消 提交回答
  •       多文件同时上传时,第一个被指定的路径才有效,后面指定的路径就无效,这是因为 jfinal 使用了 cos.jar 来帮助文件解析上传文件,cos.jar 在解析时会将所有文件保存到第一次指定的路径之下。建议使用 getFile().rename(...) 再次改变一下文件路径。######回复 @ohaozy : 请问怎样处理的getFile().reNameTo这方法用了还是保存到同一文件夹下######回复 @ohaozy : jfinal 当前需要改进的地方做的备忘已经聚集了很多,目前正在根据优先级逐一设计实现,一步步来,你的建议已经列入备忘,后续版本会逐步完善这些细节######波总提的处理方案当然是没有问题的,但是这个其实是JFinal应该处理的问题,既然用户传了文件路径参数,就应该有责任和义务把这个问题在框架内做自动做处理,而不是因为用了什么导致的结果。

    2020-06-05 14:24:23
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载