开发WEB项目的时候,使用到了Ueditor上传图片的功能,插件会自动将上传的图片保存在tomcat运行目录下,这种保存的方式会导致项目重新发布时丢失,非常不利于后续对图片的操作(管理),这时我们就要修改Ueditor的源码,解决上传图片时的路径问题


官方文档:http://fex.baidu.com/ueditor/


在线API文档:http://ueditor.baidu.com/doc/


GitHub地址:https://github.com/fex-team/ueditor


1.在git上将源码下载,并拷贝到项目中

解决Ueditor编辑器图片保存路径问题


将解压后的文件拷贝到对应的项目中

java代码

解决Ueditor编辑器图片保存路径问题

解决Ueditor编辑器图片保存路径问题


web页面和配置json

解决Ueditor编辑器图片保存路径问题

解决Ueditor编辑器图片保存路径问题


2.引入对应的jar包

            解决Ueditor编辑器图片保存路径问题

<!-- ueditor富文本 -->
<dependency>
    <groupId>commons-codec</groupId>
    <artifactId>commons-codec</artifactId>
    <version>1.9</version>
</dependency>
<dependency>
    <groupId>commons-fileupload</groupId>
    <artifactId>commons-fileupload</artifactId>
    <version>1.3.3</version>
</dependency>
<dependency>
    <groupId>commons-io</groupId>
    <artifactId>commons-io</artifactId>
    <version>2.4</version>
</dependency>
<dependency>
<groupId>org.json</groupId>
<artifactId>json</artifactId>
<version>20160810</version>

</dependency>


3.修改Tomcat服务器配置,添加图片映射路径


在本地磁盘中创建图片保存目录

eg:

解决Ueditor编辑器图片保存路径问题

打开tomcat中conf文件夹中的server.xml文件

解决Ueditor编辑器图片保存路径问题

解决Ueditor编辑器图片保存路径问题

在<host>中添加映射目录

    <Context docBase="C:\ueditorImages" path="/ueditorImages" reloadable="true"/>

解决Ueditor编辑器图片保存路径问题


修改config.json配置文件,访问路径填写刚配置的映射目录

解决Ueditor编辑器图片保存路径问题


4.创建配置文件,并读取配置信息

读配置文件的目的是为了动态修改保存路径,可以更方便的管理图片

创建ueditorConfig.properties配置文件

解决Ueditor编辑器图片保存路径问题


解决Ueditor编辑器图片保存路径问题


代码:

package com.baidu.ueditor.utils;


import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.Properties;

public class UeditorConfig {

private static Properties pro;

static {
pro = new Properties();

InputStream input = UeditorConfig.class.getClassLoader()
.getResourceAsStream("ueditorConfig.properties");

try {
pro.load(new InputStreamReader(input, "UTF-8"));
} catch (IOException e) {
e.printStackTrace();
} finally {
if (input != null) {
try {
input.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}

public static String getProperty(String key) {
return pro.getProperty(key);
}

}


5.修改ueditor源码,完善图片存储路径变更功能

接下来我们找到ImageHunter.java,   Base64Uploader.java,   BinaryUploader.java   这三个java类,

将上传路径修改为我们配置的即可

解决Ueditor编辑器图片保存路径问题


相关文章: