1 准备
请自行参考 第2文章 此处就不做过多解释了 ^_^
2. CKeditor+ckfinder ---CKFinder源码修改自定义上传文件名,链接如下
2 查找官网资料
链接如下 :https://docs-old.ckeditor.com/CKFinder_2.x/Developers_Guide/Java/CKEditor_Integration 点击打开链接
有一个参数currentFolder(当前所在文件),根据官网资料修改我们项目CKeditor中config.js资料如下
var filePath = "";
var date = new Date();
var year = date.getFullYear();
var month = (date.getMonth()+1)>9?date.getMonth()+1:"0"+(date.getMonth()+1);
filePath ="/"+year+month ;
var p='/ckdemo/assets/';
config.filebrowserBrowseUrl =p+'ckfinder/ckfinder.html';
config.filebrowserImageBrowseUrl = p+'ckfinder/ckfinder.html?type=Images';
config.filebrowserFlashBrowseUrl = p+'ckfinder/ckfinder.html?type=Flash';
config.filebrowserUploadUrl =p+'ckfinder/core/connector/java/connector.java?command=QuickUpload&type=Files';
config.filebrowserImageUploadUrl =p+'ckfinder/core/connector/java/connector.java?command=QuickUpload&type=Images¤tFolder='+filePath;
config.filebrowserFlashUploadUrl = p+'ckfinder/core/connector/java/connector.java?command=QuickUpload&type=Flash';
保存,重启项目。然后点击上传
此时会,提示文件夹不存在。
所以上传前判断此路径是否存在,不存在创建。
此处的上传按钮参数值是QuickUpload,具体自行看官网资料吧
3 修改源码
要修改的代码在CKFinder下
具体怎么找到FileUploadCommand.java,修改validateUploadItem方法,不做过多解释。有兴趣可以一起探讨。
修改com.ckfinder.connector.handlers.command下的FileUploadCommand.java
找validateUploadItem中path参数,定位此处,增加以下代码
保存,maven 打包。此处操作不会的,请参考上篇文章:
链接如下:https://blog.youkuaiyun.com/Tane_1018/article/details/80650961 点击打开链接
4、测试
将打包的文件 复制到项目中,保存重启服务器。点击上传
浏览服务器,自行创建了文件夹201806,
jar资源链接如下:
https://download.youkuaiyun.com/download/tane_1018/10473636