网上很多关于summernote 图片上传 重写的方法,就是因为有很多,所有有一些乱的,或者说比较复杂的。今天我写的这个,非常的简单,从js,到后台 处理的方法,都有。希望能给需要的人一些帮助

js代码。

$('#add_summernote').summernote({

lang: 'zh-CN', // default: 'en-US'

focus:true,

onImageUpload: function(files,editor,welEditable) {

sendFile(files[0],editor,welEditable);

}

});

function sendFile(files,editor,welEditable){

data = new FormData();

data.append("file", files);

$.ajax({

data: data,

type: "POST",

url: ctx+"/goods/summernoteImage",

cache: false,

contentType: false,

processData: false,

success: function (data) {

editor.insertImage(welEditable, data);

},

error:function(){

layer.alert('上传失败!');

return;

}

});

}

后台代码

@RequestMapping(value="summernoteImage", headers ="Accept=application/json",produces ="application/json;charset=UTF-8")

@ResponseBody

public String summernoteImage(HttpServletRequest request, HttpServletResponse response, ModelMap model,MultipartFile file) throws Exception{

String result="";

try {

if(file!=null){

String path = UploadUtil.commonUpload(1, file);

return path;

}

} catch (Exception e) {

result="";

e.printStackTrace();

}

return result;

}

图片上传方法

public class UploadUtil {

public static String commonUpload(Integer type, MultipartFile filedata) throws IOException {

String fileName = Tool.getRandomOrderNoOrFileName();// 获取时间戳 我是以获取时间戳来命名上传的文件的

String suffix = filedata.getOriginalFilename().substring

(filedata.getOriginalFilename().lastIndexOf("."));

String name = fileName +suffix;

String name_x = fileName + "_x"+suffix;

String imgAddr = "";

String root = "";

switch (type) {

case 1:

root = Tool.GetValueByKey("goodsImager");//这里我是通过system.Config.properties。配置的路径,然后根据名称来获得 图片上传的路径;  你可以,直接在这里写好路径;

imgAddr = "/ml/goods" + "/" + name;    //最后返回的 图片路径

break;

}

File file = new File(root, name_x);

//

File rootPath = new File(root);

if (!rootPath.exists()) {

rootPath.mkdir();

}

File destFile = new File(root, name);

byte[] bytes = filedata.getBytes();

FileOutputStream fos = new FileOutputStream(destFile); // 写入文件

fos.write(bytes);

fos.close();

if("png,jpg,PNG,JPG,jpeg".contains(suffix)){

NarrowImage.writeHighQuality(

NarrowImage.zoomImage(destFile.getAbsolutePath()),

file.getAbsolutePath());

}

return imgAddr;

}

}

工具类

public class Tool {

static Properties props;

static{

props = new Properties();

try {

props.load(Tool.class.getClassLoader().

getResourceAsStream("/resources/systemConfig.properties"));

} catch (IOException e) {

e.printStackTrace();

}

}

//根据 key 获取systemConfig配置

public static String GetValueByKey( String key) {

String value = props.getProperty(key);

return value;

}

// 获取时间戳

public  static String getRandomOrderNoOrFileName() {

SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");

String yid = sdf.format(new Date()) + (new Random().nextInt(100));

return yid;

}

}

summernote 图片上传 php,summernote富文本图片上传方法重写相关推荐

  1. 阿里云oss云存储图片上传在wangEditor富文本编辑器上的集成

    调用方式 html: <textarea name="newsinfo_content" id="editor" style="height:5 ...

  2. 上传文本文件到富文本

    废话 需求:有一个添加文章的需求,自己又不想去写和复制,要求是别人发给他一个doc,docx,txt,类型的文件,然后呢,他去稍微标注修改一下内容,再提交,所以就很简单嘛,一个上传,一个富文本,上传的 ...

  3. elementui图片上传php,vue+element-ui+富文本————图片上传

    最近用vue+element-ui开发一套后台管理系统,其中项目中需要用到富文本编辑器,这里总结下开发过程中遇到的坑和使用方法. 刚开始用的是vue-quill-editor结合element-ui上 ...

  4. zx-quill+vue+element实现富文本图片上传到服务器

    quill富文本编辑器图片默认是base64数据流,我们要实现把图片上传到服务器这个需求,quill中并没有找到相关配置 https://www.jianshu.com/p/9e4e4d955d0f ...

  5. vue+element-ui+富文本————图片上传

    最近用vue+element-ui开发一套后台管理系统,其中项目中需要用到富文本编辑器,这里总结下开发过程中遇到的坑和使用方法. 刚开始用的是vue-quill-editor结合element-ui上 ...

  6. Vue Element UI 之富文本图片上传服务器 + 图片地址插入富文本

    该案例的情况 vue版本:vue cli3 插件:vue-quill-editor vue-quill-editor的增强模块:quill-image-extend-module quill-imag ...

  7. vue+php使用七牛云存储解决富文本图片冗余问题

    解决服务器中图片冗余的方法很多,本篇介绍利用七牛云自带的api解决图片冗余问题 问题: 在前端编辑富文本上传图片时,一般有两种方式,一种是将图片在本地预览,文件则在本地缓存,一种是直接上传服务器,然后 ...

  8. vue 富文本 样式添加不上_vue结合ueditor富文本编辑器(换肤分离)

    需求 (PC端用它互不直曾经明以机会式近分扯.多接相常)做一个可以使用图片上传.视频上传.文件上传功能的富文本组件,简单的文本编辑发布功能,采用socke览页些求时是过解些这确如目前例总站回广随能4果 ...

  9. html加载富文本_富文本图片懒加载解决方案

    图片懒加载,作为性能优化的一部分,想必我们并不陌生. 在React.Vue项目中,我们都可以引入对应的NPM包处理图片懒加载,如 lazyload.react-lazyload.vue-lazyloa ...

  10. java freemarker 图片_java通过freemarker导出包含富文本图片的word文档

    废话不多说,进入正题! 本文重点在于:对富文本图片的导出(基础的freemarker+word模板导出这里不做详细解说哈) (ps:大神的东西太深奥~~懵逼了 一周才搞定,为了方便后来在更加简单,清晰 ...

最新文章

  1. 轻松上云系列之一:本地数据迁移上云
  2. 第十七届全国大学生智能汽车竞赛乐山师范学院申请承办西部赛区报告
  3. 【洛谷搜索专题Python和C++解】DFS和BFS经典题目(陆续补充)
  4. Django(二)模板系统
  5. bpmn2.0业务过程模型和符号_IT帮业务架构学习小组学习内容
  6. Attension Mechanism模型的详细介绍,原理、分类及应用
  7. Android NDK开发之 ARM与NEON指令说明
  8. C语言--求质数(详解)(筛选求质数)
  9. python 广义线性模型_scikit-learn 1.1 广义线性模型(Generalized Linear Models)
  10. 分布式服务架构读书笔记-第六章 Java服务的线上应急和技术攻关
  11. DOS命令打开一个软件,以及在python中的使用
  12. IRPT_TAS简介
  13. 年底了,你总结了吗?我先来。
  14. 零基础学前端系列教程 | 和前端谈恋爱的第002天——约会邀请
  15. 小闹乎谈新手必备的撸猫手册
  16. 太阳能最佳倾角c语言编程,用C语言编程计算太阳的高度角,用于控制太阳能电板最佳的倾角...
  17. 基因编辑c语言,基因编辑为何失败?那是因为Cas9霸着C位
  18. xshell起图形界面后,鼠标点击不了
  19. 逻辑电路 - 或门Or Gate
  20. 网页搜索指定网站内容site

热门文章

  1. 【Java从零到架构师第③季】【28】SpringMVC-Servlet的URL匹配_path-matching suffix-pattern
  2. 华为深度学习学习心得(第二周)
  3. 字幕组和压制组装机必备资源清单
  4. java英文介绍_java面试英文自我介绍
  5. 【原创】EPS汽车电动助力转向系统模型
  6. 人工智能零基础能学吗?0基础能学AI吗?
  7. 综合评价与决策方法(二)——模糊综合评判法
  8. 【知网研学】使用方法
  9. python access token_如何基于python对接钉钉并获取access_token
  10. 前端找工作真的那么难吗?