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. 教你使用Paw解析http请求

    教你使用Paw解析http请求 软件下载地址: 链接: http://pan.baidu.com/s/1gdzmjq7 密码: 3mpb 这款应用的图片像极了百度,哈哈. 支持的请求方式: 完整的显示 ...

  2. [翻译] GCDObjC

    GCDObjC https://github.com/mjmsmith/gcdobjc GCDObjC is an Objective-C wrapper for the most commonly ...

  3. UNIX日期与时间

    日期和时间 UINX系统内部有一个变量记录自开机以来经过的时间.从用户的角度,UNIX时间函数分为3类: 度量进程已使用CPU时间的函数: 给出绝对时间或日历时间的函数: 设置闹钟.定时器以及睡眠的函 ...

  4. November 17th 2016 Week 47th Thursday

    Don't cry because it is over. Smile because it happened. 不要因为结束而哭泣:微笑吧,因为我们曾经拥有. My ex-girlfriend ha ...

  5. [2018HN省队集训D1T1] Tree

    [2018HN省队集训D1T1] Tree 题意 给定一棵带点权树, 要求支持下面三种操作: 1 root 将 root 设为根. 2 u v d 将以 \(\operatorname{LCA} (u ...

  6. 【教程】【FLEX】#004 反射机制

    总结: 目前用到反射的主要有两个方法 1.  getDefinitionByName    //根据类名,返回对象(反射实例化对象) 2.  describeType                 ...

  7. 简单的dp加贪心

    题目链接:传送门 这个题目让我纠结了好久,之后恍然大悟是求最长的递减序列,并加上贪心的算法,如果有大于两个的发射系统,应该判断使导弹的高度与此时个个发射系统的高度比较,选取高度差最小的去执行这次的拦截 ...

  8. 我在德国做SAP CRM One Order redesign工作的心得

    时间过得很快,今天是我到德国工作的第四周,刚好一个月.Prototype的框架已经搭起来了,现在Order能够在新的框架下正常读写,能跑一些简单的scenario,这些scenario对于end us ...

  9. c++中堆、栈内存分配

    转自:https://blog.csdn.net/qingtingchen1987/article/details/7698415 一个由C/C++编译程序占用内存分为以下几个部分1.栈区(stack ...

  10. 20165318 2017-2018-2 《Java程序设计》第三周学习总结

    20165318 2017-2018-2 <Java程序设计>第三周学习总结 学习总结 我感觉从这一章开始,新的知识点扑面而来,很多定义都是之前没有接触过的,看书的时候难免有些晦涩.但由于 ...