SpringBoot中使用UEditor基本配置(图文详解)
SpringBoot中使用UEditor基本配置(图文详解)
最近因工作需要,在自己研究百度的富文本编辑器UEditor,这个过程中也遇到很多问题,这里写一下我的心得和总结,希望帮到需要帮助的人。正文如下:
第一步:创建SpringBoot项目
首先我使用的是IDEA 2017(不得不说IDEA创建Spring项目确实要方便一些),新建一个SpringBoot项目:
最上角 File -> New -> Project -> Spring Initializr
直接下一步
这些根据需要自行配置即可(这里我使用的是默认配置)。
这里我选择的是SpringBoot 1.5.10版本,勾选上Web,然后下一步选择项目保存的目录,这样就创建好了。
创建好的目录结构如下:
第二步:下载UEditor
下载地址:http://ueditor.baidu.com/website/download.html
解压后的文件结构如下:
将除jsp文件夹以外的文件都放入项目src/main/resources/static目录下
在项目根目录下创建一个lib文件夹,用于导入UEditor的jar包
将UEdito解压目录下的jsp/lib文件夹中的jar考入lib目录中,然后将jar包加入项目中
最上角 File -> Project Structrue -> Libraries
完成之后启动Application,访问localhost:8080,效果如下
到这里UEditor的导入就完成了。
第三步:UEditor的基本配置
虽然现在有了初步的效果,但是还是不能上传图片,现在进行后端配置
之前的jsp文件夹下面除了jar包外还有两个文件,一个是controller.jsp和config.json,controller.jsp其实就是为了获取config.js中的配置,所以为了方便管理以及规范,我们新建一个UEditorController将controller.jsp的内容拷贝进去,然后将config.json放到resources/static目录下,然后将Application文件移到controller的同级目录下,不然会扫描不到controller
UEditorController.java内容如下
- package com.example.controller;
- import com.baidu.ueditor.ActionEnter;
- import org.json.JSONException;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.web.bind.annotation.RequestMapping;
- import org.springframework.web.bind.annotation.RestController;
- import javax.servlet.http.HttpServletRequest;
- import javax.servlet.http.HttpServletResponse;
- import java.io.IOException;
- import java.io.PrintWriter;
- @RestController
- public class UEditroController {
- @Autowired
- private HttpServletRequest request;
- @RequestMapping("/ueditorConfig")
- public void getUEditorConfig(HttpServletResponse response){
- String rootPath = "src/main/resources/static";
- try {
- String exec = new ActionEnter(request, rootPath).exec();
- PrintWriter writer = response.getWriter();
- writer.write(exec);
- writer.flush();
- writer.close();
- } catch (IOException | JSONException e) {
- e.printStackTrace();
- }
- }
- }
因为controller.jsp中的
String rootPath = application.getRealPath( "/" )
没能获取到正确的路径,所以这里我手动更改了路径,这个路径就是config.json的位置
然后修改resource/static目录下的ueditor.config.js文件
33行左右的serverUrl的路径改为之前UEditorController的访问路径,我这里的路径是"/ueditorConfig",serverUrl就是服务器统一请求接口路径
以上都更改完之后运行Application访问http://localhost:8080/ueditorConfig?action=config
如果出现类似以下内容则表示读取配置成功
该内容即是config.json中的内容
SpringBoot中使用UEditor的基本配置到这里就完成了,但是还是不能上传图片,之后会讲解一下UEditor上传图片的配置。
SpringBoot中使用UEditor基本配置(图文详解)的更多相关文章
- Cocos2d-x win7 + vs2010 配置图文详解
Cocos2d-x win7 + vs2010 配置图文详解 下载最新版的cocos2d-x.打开浏览器,输入cocos2d-x.org,然后选择Download,本教程写作时最新版本为cocos2d ...
- Python安装、配置图文详解(转载)
Python安装.配置图文详解 目录: 一. Python简介 二. 安装python 1. 在windows下安装 2. 在Linux下安装 三. 在windows下配置python集成开发环境(I ...
- 【和我一起学python吧】Python安装、配置图文详解
Python安装.配置图文详解 目录: 一. Python简介 二. 安装python 1. 在windows下安装 2. 在Linux下安装 三. 在windows下配置python集成开发环境( ...
- office-001-Outlook邮件配置图文详解
本节以 Windows 7 操作系统下 Microsoft Outlook 配置电子邮件的方法,配以图文进行详解.敬请各位亲们参阅,若有不足之处,敬请指正,不胜感激! 闲话少数,话归正题.默认用户已经 ...
- Linux CentOS 服务器搭建与初始化配置图文详解
这几天对服务器兴趣贼为浓厚,在虚拟机上装了一个CentOS7玩了玩,遇到过很多问题,比如网卡驱动设置,不能ping 等等问题,然后掏钱买个ECS搭服务器玩玩,下面就开始谢谢我的心路历程吧. 首先 买服 ...
- spring中quatz的多定时任务配置图文详解
近来公司让用quatz框架做定时功能,而且还是执行多定时任务,真是苦恼. 虽然从网上搜了很多资料,但是写法上不太尽如人意,最后还是请教了螃蟹大神,给的配置建议就是简单啊,现在拿来分享下: 这里我们需要 ...
- Cocos2d-x win7 + vs2010 配置图文详解(亲测)
下载最新版的cocos2d-x.打开浏览器,输入cocos2d-x.org,然后选择Download,本教程写作时最新版本为cocos2d-1.01-x-0.9.1,具体下载位置如下图: 下载完之后, ...
- ssh框架中struts.xml 的配置参数详解
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE struts PUBLIC "- ...
- maven 依赖中scope标签的配置范围详解
在创建Maven项目时,需要在pom.xml 文件中添加相应的依赖,其中有一个scope标签,该标签是设置该依赖范围 (maven项目包含三种classpath{编译classpath,测试class ...
随机推荐
- Flask的错误日志处理和|ORM操作
flask有个很人性化的处理就是 你的错误的输出是可以通过错误日志来自定义 ,让你输入的错误不再是“大黄页”, 通过 errorhandler()来装饰函数之后你的所有的输入错误的函数你都会进入这个 ...
- Django 错误之 No module named ‘MySQLdb’
由于卸载Mysql时将很多相关依赖包都卸载了,重装mysql后启动django出现如下错误: django.core.exceptions.ImproperlyConfigured:Error loa ...
- 2018.08.30 21:12 第一个Django程序完成
from django.http import HttpResponse def hello(request): return HttpResponse("Hello world ! &qu ...
- html5小结
本文提到的HTML5仅仅指于2014年完成新一代的HTML标准. html5主要在以下方面做了改变. 1.新增标签 新增语义化标签. <header> 定义 section 或 page ...
- css-table属性运用
最近在工作中遇到了一些不常用的布局,很多使用 CSS table 属性,并结合 ::before,::after 伪元素完成了,使得 HTML 的结构相对更简单,更具有语义性.当 HTML 结构越清晰 ...
- 2018年1月12日--微信小程序----出错报告(40kb的原因)---并解决方法
一. 报错的原因是因为,图片的文件太大了,已经超过了40kb...不能超过40kb. 在这里查看图片文件的大小:
- Django输入 中文参数保存异常解决方法
WEB页面输入中文后保存,出现异常 cmd.exe打印如下信息: UnicodeEncodeError: 'ascii' codec can't encode characters in po ...
- Python自动化之logging模块
Logging模块构成 主要分为四个部分: Loggers:提供应用程序直接使用的接口 Handlers:将Loggers产生的日志传到指定位置 Filters:对输出日志进行过滤 Formatter ...
- LeetCode872. Leaf-Similar Trees
自己的代码: # Definition for a binary tree node. # class TreeNode: # def __init__(self, x): # self.val = ...
- helm-locate 使用 everything
emacs里不需任何设置,只要在电脑的环境变量里加上everything的目录即可. 1.下载es.exe (http://www.voidtools.com/es.zip) 2.把解压出的es.ex ...