SpringBoot中使用UEditor基本配置(图文详解)

2018年03月12日 10:52:32 BigPotR 阅读数:4497
 

最近因工作需要,在自己研究百度的富文本编辑器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内容如下

  1.  
    package com.example.controller;
  2.  
    import com.baidu.ueditor.ActionEnter;
  3.  
    import org.json.JSONException;
  4.  
    import org.springframework.beans.factory.annotation.Autowired;
  5.  
    import org.springframework.web.bind.annotation.RequestMapping;
  6.  
    import org.springframework.web.bind.annotation.RestController;
  7.  
    import javax.servlet.http.HttpServletRequest;
  8.  
    import javax.servlet.http.HttpServletResponse;
  9.  
    import java.io.IOException;
  10.  
    import java.io.PrintWriter;
  11.  
     
  12.  
    @RestController
  13.  
    public class UEditroController {
  14.  
    @Autowired
  15.  
    private HttpServletRequest request;
  16.  
    @RequestMapping("/ueditorConfig")
  17.  
    public void getUEditorConfig(HttpServletResponse response){
  18.  
    String rootPath = "src/main/resources/static";
  19.  
    try {
  20.  
    String exec = new ActionEnter(request, rootPath).exec();
  21.  
    PrintWriter writer = response.getWriter();
  22.  
    writer.write(exec);
  23.  
    writer.flush();
  24.  
    writer.close();
  25.  
    } catch (IOException | JSONException e) {
  26.  
    e.printStackTrace();
  27.  
    }
  28.  
    }
  29.  
    }

因为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基本配置(图文详解)的更多相关文章

  1. Cocos2d-x win7 + vs2010 配置图文详解

    Cocos2d-x win7 + vs2010 配置图文详解 下载最新版的cocos2d-x.打开浏览器,输入cocos2d-x.org,然后选择Download,本教程写作时最新版本为cocos2d ...

  2. Python安装、配置图文详解(转载)

    Python安装.配置图文详解 目录: 一. Python简介 二. 安装python 1. 在windows下安装 2. 在Linux下安装 三. 在windows下配置python集成开发环境(I ...

  3. 【和我一起学python吧】Python安装、配置图文详解

     Python安装.配置图文详解 目录: 一. Python简介 二. 安装python 1. 在windows下安装 2. 在Linux下安装 三. 在windows下配置python集成开发环境( ...

  4. office-001-Outlook邮件配置图文详解

    本节以 Windows 7 操作系统下 Microsoft Outlook 配置电子邮件的方法,配以图文进行详解.敬请各位亲们参阅,若有不足之处,敬请指正,不胜感激! 闲话少数,话归正题.默认用户已经 ...

  5. Linux CentOS 服务器搭建与初始化配置图文详解

    这几天对服务器兴趣贼为浓厚,在虚拟机上装了一个CentOS7玩了玩,遇到过很多问题,比如网卡驱动设置,不能ping 等等问题,然后掏钱买个ECS搭服务器玩玩,下面就开始谢谢我的心路历程吧. 首先 买服 ...

  6. spring中quatz的多定时任务配置图文详解

    近来公司让用quatz框架做定时功能,而且还是执行多定时任务,真是苦恼. 虽然从网上搜了很多资料,但是写法上不太尽如人意,最后还是请教了螃蟹大神,给的配置建议就是简单啊,现在拿来分享下: 这里我们需要 ...

  7. Cocos2d-x win7 + vs2010 配置图文详解(亲测)

    下载最新版的cocos2d-x.打开浏览器,输入cocos2d-x.org,然后选择Download,本教程写作时最新版本为cocos2d-1.01-x-0.9.1,具体下载位置如下图: 下载完之后, ...

  8. ssh框架中struts.xml 的配置参数详解

    <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE struts PUBLIC "- ...

  9. maven 依赖中scope标签的配置范围详解

    在创建Maven项目时,需要在pom.xml 文件中添加相应的依赖,其中有一个scope标签,该标签是设置该依赖范围 (maven项目包含三种classpath{编译classpath,测试class ...

随机推荐

  1. Flask的错误日志处理和|ORM操作

    flask有个很人性化的处理就是 你的错误的输出是可以通过错误日志来自定义  ,让你输入的错误不再是“大黄页”, 通过 errorhandler()来装饰函数之后你的所有的输入错误的函数你都会进入这个 ...

  2. Django 错误之 No module named ‘MySQLdb’

    由于卸载Mysql时将很多相关依赖包都卸载了,重装mysql后启动django出现如下错误: django.core.exceptions.ImproperlyConfigured:Error loa ...

  3. 2018.08.30 21:12 第一个Django程序完成

    from django.http import HttpResponse def hello(request): return HttpResponse("Hello world ! &qu ...

  4. html5小结

    本文提到的HTML5仅仅指于2014年完成新一代的HTML标准. html5主要在以下方面做了改变. 1.新增标签 新增语义化标签. <header> 定义 section 或 page ...

  5. css-table属性运用

    最近在工作中遇到了一些不常用的布局,很多使用 CSS table 属性,并结合 ::before,::after 伪元素完成了,使得 HTML 的结构相对更简单,更具有语义性.当 HTML 结构越清晰 ...

  6. 2018年1月12日--微信小程序----出错报告(40kb的原因)---并解决方法

    一. 报错的原因是因为,图片的文件太大了,已经超过了40kb...不能超过40kb. 在这里查看图片文件的大小:

  7. Django输入 中文参数保存异常解决方法

    WEB页面输入中文后保存,出现异常     cmd.exe打印如下信息: UnicodeEncodeError: 'ascii' codec can't encode characters in po ...

  8. Python自动化之logging模块

    Logging模块构成 主要分为四个部分: Loggers:提供应用程序直接使用的接口 Handlers:将Loggers产生的日志传到指定位置 Filters:对输出日志进行过滤 Formatter ...

  9. LeetCode872. Leaf-Similar Trees

    自己的代码: # Definition for a binary tree node. # class TreeNode: # def __init__(self, x): # self.val = ...

  10. helm-locate 使用 everything

    emacs里不需任何设置,只要在电脑的环境变量里加上everything的目录即可. 1.下载es.exe (http://www.voidtools.com/es.zip) 2.把解压出的es.ex ...