此篇文章仅献给已实现百度富文本编辑器,想要设置相对路径并保存到数据库,方便以后项目迁移。

使用的版本为1.2.3,适用图片上传中点击以及拖拽功能。

        //保存图片相对地址的设置
        //1.请修改Uploader.java的getPhysicalPath()方法,设置返回的地址
        //2.请修改imageUp.jsp中的相对地址result
        //3.请修改image.js中的getAllPic()设置src、_src返回值

1、修改后台代码Uploader.java

    /**
* 根据传入的虚拟路径获取物理路径
*
* @param path
* @return
*/
private String getPhysicalPath(String path) {
//原版:上传文件放在请求路径(百度编辑器)上一级
// String servletPath = this.request.getServletPath();
// String realPath = this.request.getSession().ge tServletContext()
// .getRealPath(servletPath);
// return new File(realPath).getParent() +"/" +path; //修改版:上传文件放在webapp下
String servletContext = this.request.getSession().getServletContext().getRealPath("");
return new File(servletContext).getParent() +"/" +path;
}

2、修改imageUp.jsp

    //String result = "{\"name\":\""+ up.getFileName() +"\", \"originalName\": \""+ up.getOriginalName() +"\", \"size\": "+ up.getSize() +", \"state\": \""+ up.getState() +"\", \"type\": \""+ up.getType() +"\", \"url\": \""+ up.getUrl() +"\"}";
String pathPre = "../../../../../"; //修改版:根据imageUp.jsp相对位置进行修改,此处图片放在webapp下(不同位置自行修改)
String result = "{\"name\":\""+ up.getFileName() +"\", \"originalName\": \""+ up.getOriginalName() +"\", \"size\": "+ up.getSize() +", \"state\": \""+ up.getState() +"\", \"type\": \""+ up.getType() +"\", \"url\": \""+ pathPre + up.getUrl() +"\"}";

3、修改image.js

getAllPic: function (sel, $w, editor) {
var me = this,
arr = [],
$imgs = $(sel, $w); $.each($imgs, function (index, node) {
$(node).removeAttr("width").removeAttr("height"); // if (node.width > editor.options.initialFrameWidth) {
// me.scale(node, editor.options.initialFrameWidth -
// parseInt($(editor.body).css("padding-left")) -
// parseInt($(editor.body).css("padding-right")));
// }
//修改版:设置为相对路径(请按需修改)
var srcFixed = node.src;
srcFixed = srcFixed.slice(srcFixed.indexOf('upload'));
srcFixed = "../../../../../" + srcFixed;
return arr.push({
//_src: node.src,
//src: node.sr
_src: srcFixed,
src: srcFixed
});
}); return arr;
},

这样,在数据库中保存的数据就是相对地址了,与IP、域名无关。

umeditor 上传图片 相对路径的设置和保存的更多相关文章

  1. Cookie中图片的浏览记录与cookie读取servle时路径的设置(文字描述)

    public class ShowServlet extends HttpServlet { public void doGet(HttpServletRequest request, HttpSer ...

  2. file上传图片获取路径地址

    file上传图片获取路径地址 类似:点击button,选择图片,在对应的输入框input里面显示图片路径地址 类似这样 原理:通过opacity来隐藏原生的input file 然后用.file-bt ...

  3. AMH4.2 Ftp账号路径修改设置

    AMH4.2的ftp控制有点不尽如人意,每个ftp账号只能对应一个站点:如果按照面板所提供的权限,有多少个站就得设置多少个ftp账号,这一操作就会非常麻烦,造成效率低下:不过AMH5.0已经能够通过面 ...

  4. Allegro PCB Design GXL (legacy) 设置自动保存brd文件

    Allegro PCB Design GXL (legacy) version 16.6-2015 菜单Setup > User Preferences... 在User Preferences ...

  5. Django日志信息路径的设置

    django日志信息路径的设置, 因为我们经常在代码业务上线时候 需要进行调试,查看代码的后台运行情况,就需要设置django项目的具体的日志信息运维的路径了 LOGGING = { 'version ...

  6. 安装VS组件提示“所选驱动不再有效。继续安装之前,请先检查安装路径的设置。”要怎么办?

    电脑里面原来装了VS2010,包括的组件有VB和C++,现在想添加C#,结果安装的时候就提示“所选驱动不再有效.继续安装之前,请先检查安装路径的设置”,安装路径在C盘,还有40个G,不知道该怎么办? ...

  7. 自动化上传图片,路径driver.find_element_by_id("oper-img-change").send_keys("C:\\Users\\76776\\Pictures\\logo.jpg"),为正确姿势,单\报错 'unicodeescape' codec can't decode bytes in position XXX: trun

    自动化上传图片,路径driver.find_element_by_id("oper-img-change").send_keys("C:\\Users\\76776\\P ...

  8. Win7/Win2008下IIS配置Asp网站启用父路径的设置方法(已解决)

    Win7/Win2008下IIS配置Asp网站启用父路径的设置方法(已解决) 在Win7/Win2008下IIS配置Asp网站启用父路径的设置方法与win2003下不同,看看下图就知道了.

  9. iOS - 静态库的导入和头文件路径的设置

    开发过程中,免不了要用到一些第三方或者是别人写好的一些Demo,这时就经常会用到别人写的一些静态库(.a文件)和n多个头文件(.h文件),这些文件不是简单地把它们拉到自己的工程里面就行的,还要设置一些 ...

随机推荐

  1. Golang的演化历程

    本文来自Google的Golang语言设计者之一Rob Pike大神在GopherCon2014大会上的开幕主题演讲资料“Hello, Gophers!”.Rob大神在这次分 享中用了两个生动的例子讲 ...

  2. XF 通过判断平台加载不同的图片

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  3. html send mail

    <html> <body> <script> var formattedBody = "FirstLine \n Second Line \n Third ...

  4. [PowerDesign]将数据库从SQL Server数据库转换为MySQL

    原文:[PowerDesign]将数据库从SQL Server数据库转换为MySQL 一.迁移Database Schema. 首先使用Sybase Powerdesigner的逆向工程功能,逆向出S ...

  5. 获取UWP配置文件中的版本信息

    原文:获取UWP配置文件中的版本信息 在一般的软件中,我们都会显示当前软件的版本信息.以前作者都是在发版的时候修改一下UWP的配置文件中的版本信息和软件中的版本信息.但是每次这样很麻烦,有时间忘记修改 ...

  6. 关于EF ORM 框架的使用问题

    1.无法更新 EntitySet“System_UserInfo20140218001”,因为它有一个 DefiningQuery,而 <ModificationFunctionMapping& ...

  7. SharePoint Add-in Model 介绍 - 引文(先导篇)

    1. SharePoint 平台 如果你已经很熟悉 SharePoint 平台,可跳过本章节. 1.1 SharePoint 是什么 在介绍 Add-in Model 之前,简要提一下 SharePo ...

  8. Debug监视器(监视运行期程序通过API函数OutputDebugString输出的字符串)

    http://download.csdn.net/detail/zswang/207199

  9. Git 常用命令大全(转)

    Git 是一个很强大的分布式版本控制系统.它不但适用于管理大型开源软件的源代码,管理私人的文档和源代码也有很多优势. Git常用操作命令: 1) 远程仓库相关命令 检出仓库:$ git clone g ...

  10. 为什么有如此多的C++测试框架 - from Google Testing Blog

    Why Are There So Many C++ Testing Frameworks? by Zhanyong Wan (Software Engineer) 最近貌似有很多人正在开发他们自己的C ...