Struts 2 – 拦截使用CKEditor上传的图像文件
我在网站的不同页面上有一个CKEditor
,因此我将上传设置为true
以及所有配置工作以使其正常工作,并且图像上传工作正常"Send it to the Server"
选项卡。 但是从这里我想截取或与upload
function交互,以便能够将图像上传到文件夹,而是上传到图像上传, "category"
, "cropping"
和其他一些操作的数据库。他们。
那么如何拦截这些上传?
我很好奇,我发现上传的默认操作是
/%project_name%/ckeditor/upload.html?CKEditor=textarea_1457018535&CKEditorFuncNum=2&langCode=en
此上传的操作是CkeditorUpload.java ,但我没有意识到如何进一步使用它们。
好吧,如果你想覆盖它,你应该从上面的action类开始重写方法execute。 还可以通过替换操作配置中的类引用来覆盖配置。 关键是原始实现创建FileOutputStream
应该替换为ByteArrayOutputStream
。 然后让它写入字节数组流,并从中获取getBytes()
将为您提供byte[] data
。 将该数据保存到数据库。 您可能还会阅读此答案将帮助您完成此操作,或者本教程将向您解释如何使用Hibernate。 然后,操作写入HTML的代码将磁盘路径更改为操作路径/uploads
映射到从数据库检索图像的操作。 您可以在此处找到ImageAction
示例。 这个答案也会有所帮助。