网站首页 > 技术教程 正文
百度编辑器是目前比较流行的一个富文本编辑器,百度编辑器虽然好用,但是在一些场景下图片上传是一件很尴尬的事情。根据官网文档的描述百度编辑器的图片上传只能保存在网站根目录下
百度编辑器文档截图
如果图片只能保存在根目录下这会带来许多问题,如果项目重新发布那就意味着图片也就覆盖了,这显然是我们不能接受的,而且如果我们的网站已经配置了nginx图片服务器或者其他图片服务器,它们都不在我们的网站根目录下我们该如何处理呢?
我在官网找了半天没有找到解决的办法,看来只能出大招了,自己改改源码吧,在源码中把图片的保存路径改成可以配置的路径这样就可以想怎么保存就怎么保存了。
修改百度编辑器文件保存根目录
我使用编辑器自带的java图片上传例子做说明,百度编辑器自带文件上传功能是通过一个jsp文件来完成的
1、首先下载百度编辑器的完整版源码
点击下载-> 1.4.4.3 源码地址
2、解压后把java后台源码导入到项目中
导入后包结构
当然导入前你得确保你的项目中已经加入了百度编辑器所依赖的一些jar包,这些jar包在
jsp/lib文件夹中,jar包列表如下
百度编辑器依赖jar包
当然如果你的项目使用maven构建的话也可以直接通过mave来引入jar包。
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
<version>1.3.2</version>
</dependency>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.2</version>
</dependency>
<dependency>
<groupId>commons-codec</groupId>
<artifactId>commons-codec</artifactId>
<version>1.9</version>
</dependency>
<dependency>
<groupId>org.json</groupId>
<artifactId>json</artifactId>
<version>20140107</version>
</dependency>
3、引入百度编辑器的js文件
一般需要根据自己本地的情况修改一下后台配置文件和前台配置文件,主要是修改请求地址,图片保存路径这些。你可以打开这几个文件看看,里面都有注释很清楚。
前台文件结构
4、文件都引入后,我们开始找修改文件保存的路径
从controller.jsp开始我们可以找到一个叫做exec()的方法,从这个方法一直追踪发现配置图片上传根路径的地方在ConfigManager.java 中的 getConfig()方法中,找到后修改如下:
源码修改截图
说明
实现思路如上图所示:把文件保存路径存在 .properties 配置文件中,然后在这ConfigManager.java里取出来,用配置的保存替代原来代码中的rootPath,这样就达到了我们自定义配置图片保存路径的目的了;等你亲自试验后你可能会问,为什么不直接修改,传入的根路径,这样不是更方便吗?
controller.jsp截图
错了,我开始也是这样做的,但是显然rootPath不只是用来保存文件时候用的,读取配置文件的时候也是基于rootPath来读取的,如果直接改了传入的rootPath导致配置文件读取失败所以这是不行的。
- 上一篇: nginx修改上传文件大小限制的教程
- 下一篇: Nginx中4个有意义的配置,你都用过吗?
猜你喜欢
- 2024-10-12 Nginx的入门介绍(nginx入门教程)
- 2024-10-12 Nginx的参数调优(nginx 调试)
- 2024-10-12 Nginx大文件传输配置(nginx 文件大小限制)
- 2024-09-22 nginx——限制上传文件的大小(nginx 文件限制)
- 2024-09-22 Nginx中非常有意义的配置TOP4(nginx安装与配置详解windows)
- 2024-09-22 nginx 开启高效文件传输模式(nginx传输大文件)
- 2024-09-22 nginx + fastDFS-单机图片服务器解决方案
- 2024-09-22 Apache Server搭建图片服务器(linux图片服务器搭建)
- 2024-09-22 分布式图片服务器搭建(分布式服务器架构图)
- 2024-09-22 写给小白的 Nginx 文章(写给小白的一封信)
你 发表评论:
欢迎- 最近发表
-
- Win10 TH2正式版官方ESD映像转换ISO镜像方法详解
- 使用iso镜像升级到Windows 10的步骤
- macOS Ventura 13.2 (22D49) Boot ISO 原版可引导镜像
- 安利一个用ISO镜像文件制作引导U盘的的小工具RUFUS
- CentOS 7使用ISO镜像配置本地yum源
- 用于x86平台的安卓9.0 ISO镜像发布下载:通吃I/A/N、完全免费
- AlmaLinux 9.6发布:升级工具、初步支持IBM Power虚拟化技术
- Rufus写入工具简洁介绍与教程(写入模式)
- 新硬件也能安装使用了,Edge版Linux Mint 21.3镜像发布
- 开源工程师:Ubuntu应该抛弃32位ISO镜像
- 标签列表
-
- 下划线是什么 (87)
- 精美网站 (58)
- qq登录界面 (90)
- nginx 命令 (82)
- nginx .http (73)
- nginx lua (70)
- nginx 重定向 (68)
- Nginx超时 (65)
- nginx 监控 (57)
- odbc (59)
- rar密码破解工具 (62)
- annotation (71)
- 红黑树 (57)
- 智力题 (62)
- php空间申请 (61)
- 按键精灵 注册码 (69)
- 软件测试报告 (59)
- ntcreatefile (64)
- 闪动文字 (56)
- guid (66)
- abap (63)
- mpeg 2 (65)
- column (63)
- dreamweaver教程 (57)
- excel行列转换 (56)
本文暂时没有评论,来添加一个吧(●'◡'●)