网站首页 > 精选教程 正文
百度编辑器是目前比较流行的一个富文本编辑器,百度编辑器虽然好用,但是在一些场景下图片上传是一件很尴尬的事情。根据官网文档的描述百度编辑器的图片上传只能保存在网站根目录下
百度编辑器文档截图
如果图片只能保存在根目录下这会带来许多问题,如果项目重新发布那就意味着图片也就覆盖了,这显然是我们不能接受的,而且如果我们的网站已经配置了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导致配置文件读取失败所以这是不行的。
猜你喜欢
- 2024-10-04 「Nginx」面试官竟问我Nginx如何生成缩略图,还好我看了这篇文章
- 2024-10-04 Nginx从理论到实践超详细笔记 nginx 原理与架构
- 2024-10-04 分布式图片服务器搭建 分布式服务架构:原理,设计与实战 pdf
- 2024-10-04 详解用户图片上传流程 上传图片的要求
- 2024-10-04 一张简图、一个故事认识Nginx正向代理、反向代理,终生难忘
- 2024-10-04 17、Nginx-图片防盗链的配置 nginx防止盗链
- 2024-10-04 Nginx系列 nginxs
- 2024-10-04 Nginx有哪些适用场景 nginx可以用于哪些协议
- 2024-10-04 Nginx搭建图片服务器,实现图片自定义缩放
- 2024-10-04 nginx webp 响应式图片 nginx web应用实战
你 发表评论:
欢迎- 最近发表
-
- 我的世界光影MOD下载(我的世界光影mod下载安装)
- 我的世界1.7/1.8VoxelMap小地图MOD下载
- 我的世界1.7.10多世界 整合包(我的世界1.7.10forge整合包)
- 我的世界1.8最好用的修改器下载(我的世界1.8最好用的修改器下载安装)
- 我的世界更多弯曲动作MOD下载(我的世界更多弯曲动作mod下载手机版)
- 我的世界龙珠MOD下载(我的世界龙珠模组整合包下载)
- 我的世界1.7.10以太2 下载(我的世界以太2mod1.12.2)
- 我的世界虚拟人生MOD下载分享(我的世界虚拟人生下载安装)
- 我的世界无正版账号的简单联机方法(非网易版,仅适用于局域网)
- “我的语言极限,即是我的世界的极限。” ——《On Java》书籍推荐
- 标签列表
-
- nginx反向代理 (57)
- nginx日志 (56)
- nginx限制ip访问 (62)
- mac安装nginx (55)
- java和mysql (59)
- java中final (62)
- win10安装java (72)
- java启动参数 (64)
- java链表反转 (64)
- 字符串反转java (72)
- java逻辑运算符 (59)
- java 请求url (65)
- java信号量 (57)
- java定义枚举 (59)
- java字符串压缩 (56)
- java中的反射 (59)
- java 三维数组 (55)
- java插入排序 (68)
- java线程的状态 (62)
- java异步调用 (55)
- java中的异常处理 (62)
- java锁机制 (54)
- java静态内部类 (55)
- java怎么添加图片 (60)
- java 权限框架 (55)
本文暂时没有评论,来添加一个吧(●'◡'●)