解决Ueditor编辑器上传图片的路径问题
之前发表过一篇Ueditor编辑器的配置以及使用的教程:
这篇文章是对Ueditor编辑器图片上传保存的优化。
遇到的问题:
在线API文档:http://ueditor.baidu.com/doc/
GitHub地址:https://github.com/fex-team/ueditor
将jsp/src/目录下的所有文件拷贝到你的工程下
目录视图
将ueditor-1.1.2.jar删除,只引用前四个jar包
在tomcat中添加图片的绝对路径和图片访问虚拟路径
修改config.json
配置文件,访问路径填写刚配置的虚拟目录
在src目录下创建config.properties
,存放图片路径
读配置文件的目的是为了动态修改保存路径,可以更方便的管理图片
创建ConfigUtil.java
类,用于读取配置文件
import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;import java.util.Properties;/** * 用于读取配置文件 * @author LingDu */public class ConfigUtil { private static Properties pro; static{ pro=new Properties(); //默认从类的所在包目录开始查找资源文件 //如果要classpath的根目录开始找,必须加上/ /*InputStream input=PropertiesUtil.class. getResourceAsStream("/config.properties");*/ //默认从classspath的根目录开始查找资源文件 InputStream input=ConfigUtil.class .getClassLoader() .getResourceAsStream("config.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 get(String key){ return pro.getProperty(key); } public static int getInt(String key){ return Integer.parseInt(pro.getProperty(key)); }}
选中项目,使用Eclipse文件搜索功能
搜索 physicalPath
找到在3个类中使用到了 physicalPath
这里有3个类的是要修改源码的
//注释掉原来的路径代码//String physicalPath = this.rootPath + savePath;
this.savePath
)
注意:ConfigUtil.get("savepath")
,字段名必须一样,否则读取不了
ImageHunter.java
Base64Uploader.java
BinaryUploader.java
往编辑器添加一张图片
再来看看图片保存目录
通过改源码的方式就能成功对图片进行统一管理了。
如果配置文件中配置了过滤所有的请求,需要将其设置成只过滤.action
的请求,否则导致文件保存不成功的情况。
联系客服