使用KindEditor富文本编译器实现图片上传并回显

前言:KindEditor富文本编译器的格式较为严格,用户必须严格按照文档提供的接口规定才能实现想要的功能(本文中是在SSM环境下进行测试的)

在项目中导入如下文件

在所需要使用该编译器的页面中引入

    <script src="../static/easyui/locale/easyui-lang-zh_CN.js"></script>
    <script src="../static/kindeditor/kindeditor-all.js"></script>
    <script src="../static/kindeditor/lang/zh-CN.js"></script>
    <script>
        KindEditor.ready(function (K) {
            window.editor = K.create(‘#editor_id‘,{         // filePostName:‘imgFile‘, //后面你就会知道这个是干啥的了
                uploadJson: ‘/upload‘,
            });
        });
    </script>

官方要求的返回格式是这样的

我们自己创建一个类返回固定的格式类型

public class UploadRespBean {

    private int error;
    private Object url;
    private String message;

    public UploadRespBean(int error, Object url, String message) {
        this.error = error;
        this.url = url;
        this.message = message;
    }

    public UploadRespBean() {
    }
  //省略set和get方法
}

书写上传类

@RequestMapping("/upload")
    public UploadRespBean upload(HttpServletRequest request, MultipartFile imgFile){
        StringBuffer url = new StringBuffer(); //存放返回url地址的容器
        String imagePath="/Hospital_Item/"+sdf.format(new Date()); //图片的相对路径,格式:/blogimg/日期
        String realPath = request.getServletContext().getRealPath(imagePath); //获取项目的绝对路径
        File imageFolder = new File(realPath); //查看是否有该文件夹

        if (!imageFolder.exists()) { //如果不存在
            imageFolder.mkdirs(); //创建该文件夹
        }
        //如果存在,将图片的名称重新命名
        String imageName= UUID.randomUUID()+"_"+imgFile.getOriginalFilename().replaceAll(" ", "");
        //获取返回的url
        url.append(request.getScheme()) //相当于http
                .append("://") //相当于http://
                .append(request.getServerName()) //相当于http://localhost
                .append(":")//相当于http://localhost:
                .append(request.getServerPort())//相当于http://localhost:8080
                .append(request.getContextPath()) //获取该tomcat容器的路径
                .append(imagePath); //相当于http://localhost:8080/项目容器/blogimage+日期

        try {
            IOUtils.write(imgFile.getBytes(), new FileOutputStream(new File(realPath, imageName))); //存image图片到该realPath路径中
            url.append("/")//相当于http://localhost:8080/项目容器/blogimage+日期/
                    .append(imageName);//相当于http://localhost:8080/项目容器/blogimage+日期/图片名称
            return new UploadRespBean(0,url,"上传成功!"); //上传成功后返回图片地址
        } catch (IOException e) {
            e.printStackTrace();
        }

        return new UploadRespBean(1,"","上传失败!"); //上传成功后返回图片地址
    }

要特别注意MultipartFile 后面的值必须是imgFile,如果不想写这个需要使用filePostName来自己取名字

原文地址:https://www.cnblogs.com/gfbzs/p/12269768.html

时间: 2024-11-08 16:02:17

使用KindEditor富文本编译器实现图片上传并回显的相关文章

图片上传并回显后端篇

图片上传并回显后端篇 我们先看一下效果 继上一篇的图片上传和回显,我们来实战一下图片上传的整个过程,今天我们将打通前后端,我们来真实的了解一下,我们上传的文件,是以什么样的形式上传到服务器,难道也是一张图片?等下我们来揭晓 我们在实战开始前呢,我们先做一下准备工作,比如新建一个java web工程,如果你不懂这个的话,那我建议你先学一下Javaweb,可以去我的公众号找一下这方面的教程.我们就给我们的工程起名为UpImg,我们再给他建一个web包和util包,再把我们以前前端做的图片回显的代码拷

图片上传并回显Ajax异步篇

图片上传并回显Ajax异步篇 图片如何无刷新的上传到服务器呢?继前两篇文章后,我们来实战一下如何无刷新的异步上传图片,我们还是先看一下效果 在实战前呢,我们需要做些准备工作.比如说,了解一下FormData对象 "FormData对象用以将数据编译成键值对,以便用XMLHttpRequest来发送数据.其主要用于发送表单数据,但亦可用于发送带键数据(keyed data),而独立于表单使用.如果表单enctype属性设为multipart/form-data ,则会使用表单的submit()用来

UEditor富文本编辑器的图片上传 http://fex.baidu.com/ueditor/#server-deploy

http://fex.baidu.com/ueditor/#server-deploy http://fex.baidu.com/ueditor/#server-path 首先 editor配置文件中 ueditor.config.js 的请求借口路径为 (即服务器所在) // 服务器统一请求接口路径 , serverUrl: URL + "net/controller.ashx" 然后 net下面的 config.json中的 "imageUrlPrefix":

jsp+ajax+springMvc图片上传立刻回显 电商

思路:onchange()事件触发异步请求,js将成功后返回图片的地址动态写入 JSP页面:  外层一个ID为myForm的表单 <pre name="code" class="html"> <a name="uploadImgs" id="uploadImgs"></a> <p><label><samp>*</samp>上传产品图片(XX尺寸

springboot项目图片上传,回显;使用外部静态资源路径回显图片

//前端图片是Base64字符串形式传递图片参数:需要用Base解密,写入到本地磁盘中 public String upload(String string){ 解析图片(Base64): response.setHeader("Access-Control-Allow-Origin","*"); // 第二个参数填写允许跨域的域名称,不建议直接写 "*" response.setHeader("Access-Control-Allow

富文本编辑器handyeditor,上传和预览图片的host地址不一样

使用富文本编辑器(官网)时,大多时候都会用到图片上传,但是下载的富文本编辑器的默认配置是只有一个上传地址的host的. var he = HE.getEditor('editor', { autoHeight: true, autoFloat: false, topOffset: 0, uploadPhoto: true, uploadPhotoUrl: uploadDomain, uploadPhotoHandler: "", uploadPhotoSize: 200, upload

kindeditor富文本编译器

一.网址 kindeditor.net/about.php 二.编辑器的使用,看官方文档 三.常用初始化参数 1.resizeType2或1或0,2时可以拖动改变宽度和高度,1时只能改变高度,0时不能拖动.    数据类型: Int    默认值: 2 2.uploadJson指定上传文件的服务器端程序.    数据类型: String    默认值: basePath + ‘php/upload_json.php’ 3.extraFileUploadParams上传图片.Flash.视音频.文

kindeditor Springmvc 整和解决图片上传问题

1. 在编辑页面引入js <script type="text/javascript" charset="utf-8" src="${basePath }/js/plugin/kindeditor-4.1.7/kindeditor-min.js"></script><script type="text/javascript" charset="utf-8" src="

springboot+thymeleaf 实现图片文件上传及回显

1. 创建一个springboot工程, 在此就不多说了(目录结构). 2. 写一个HTML页面 <!DOCTYPE html> <html lang="en" xmlns:th="http://www.w3.org/1999/xhtml"> <head> <meta charset="UTF-8"> <link rel="stylesheet" href="..