ckeditor java 上传_java使用CKEditor实现图片上传功能
java如何使用ckeditor实现图片上传功能,具体内容如下
1.根据实际需要下载指定的ckeditor
2.删除文件ckeditor/plugins/image/dialogs/image.js预览框中文本内容,并修改hidden属性值为显示上传选项卡
删除image.js中包含在双引号中的上述文本
将image.js中的hidden属性值改为0
3.修改ckeditor/config.js文件,配置“上传到服务器”按钮调用的controller接口
4.“上传到服务器”按钮调用的controller级别的接口
@controller
@requestmapping("publicutil")
public class publicutilcontroller {
@requestmapping(value = "uploadimage")
private void uploadimage(httpservletrequest request, httpservletresponse response, httpsession session,@requestparam multipartfile[] upload) {
response.setcharacterencoding("utf-8");
printwriter out=null;
try {
out = response.getwriter();
} catch (ioexception e1) {
logger.error("response.getwriter()异常="+e1);
e1.printstacktrace();
}
string callback = request.getparameter("ckeditorfuncnum");
// 获得response,request
map m = new hashmap();
if (!servletfileupload.ismultipartcontent(request)) {
m.put("error", 1);
m.put("message", "请选择文件!");
//return m;
logger.info("请选择文件!");
}
string originalfilename=null;//上传的图片文件名
string fileextensionname=null;//上传图片的文件扩展名
for (multipartfile file : upload) {
if (file.getsize()> 10*1024* 1024) {
out.println("
out.println("window.parent.ckeditor.tools.callfunction(" + callback
+ ",''," + "'文件大小不得大于10m');");
out.println("");
}
originalfilename=file.getoriginalfilename();
logger.info("上传的图片文件名="+originalfilename);
fileextensionname= originalfilename.substring(
originalfilename.lastindexof(".") ,originalfilename.length()).tolowercase();
logger.info("图片文件扩展名="+fileextensionname);
string[] imageextensionnamearray= websiteconstant.image_extension_name_array;
string allimageextensionname="";
boolean iscontain=false;//默认不包含上传图片文件扩展名
for(int i=0;i
if(fileextensionname.equals(imageextensionnamearray[i])){
iscontain=true;
}
if(i==0){
allimageextensionname+=imageextensionnamearray[i];
}else{
allimageextensionname+=" , "+imageextensionnamearray[i];
}
}
string newfilename=java.util.uuid.randomuuid().tostring()+fileextensionname;
string uploadpath =websiteconstant.pic_app_file_system_ckeditor_location;
if(iscontain){//包含
file pathfile = new file(uploadpath);
if (!pathfile.exists()) { // 如果路径不存在,创建
pathfile.mkdirs();
}
try {
fileutils.copyinputstreamtofile(file.getinputstream(), new file(uploadpath ,newfilename));
// inputstream is=file.getinputstream();
// file tofile = new file(uploadpath, newfilename);
// outputstream os = new fileoutputstream(tofile);
// byte[] buffer = new byte[1024];
// int length = 0;
// while ((length = is.read(buffer)) > 0) {
// os.write(buffer, 0, length);
// }
// is.close();
// os.close();
} catch (ioexception e) {
logger.error("fileutils.copyinputstreamtofile uploadpath="+uploadpath+" newfilename ="+newfilename+" exception="+e);
}
string imageurl=websiteconstant.pic_app_server_url+"images/ckeditor/"+newfilename;
// 返回"图像信息"选项卡并显示图片 ,在对应的文本框中显示图片资源url
out.println("
out.println("window.parent.ckeditor.tools.callfunction(" + callback
+ ",'" +imageurl + "','')");
out.println("");
}else{
out.println("
out.println("window.parent.ckeditor.tools.callfunction(" + callback
+ ",''," + "'文件格式不正确(必须为"+allimageextensionname+"文件)');");
out.println("");
}
}
}
}
public class websiteconstant {
public static string[] image_extension_name_array={".jpg",".jpeg",".png",".gif",".bmp"};
public static string pic_app_server_url="http://localhost:8090/picture/";
public static string pic_app_file_system_ckeditor_location="/users/abc/documents/tomcat/webapps/picture/images/ckeditor/";
public static final int success = 1; // 操作成功
5.若是在maven项目中使用的ckeditor,需要在pom.xml中添加如下代码:
com.ckeditor
ckeditor-java-core
3.5.3
6.最终效果图
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持萬仟网。
希望与广大网友互动??
点此进行留言吧!
ckeditor java 上传_java使用CKEditor实现图片上传功能相关推荐
- java struts2 上传图片_Java框架Struts2实现图片上传功能
Struts 2 框架为处理文件上传提供了内置支持,它使用"在 HTML 中基于表单的文件上传".当上传一个文件时,它通常会被存储在一个临时目录中,而且它们应该由 Action 类 ...
- kindeditor java 上传图片_java中KindEditor本地图片上传与上传失败问题
此代码是最新版的 KindEditor 3.5.x 实现本地图片上传的方法,用于oschina即将改版的个人空间 KindEditor 要求的JSON格式如下: {"error": ...
- java上传网络图片_java网络编程之图片上传
输入输出流核心代码 所有的文件传输都是靠流,其中文件复制最具代表性.输入流和输出流,从输入流中读取数据写入到输出流中. InputStream in =输入源; OutputStream os=输出目 ...
- java 微信图片上传_微信小程序图片上传java端以及前端实现
小程序的图片上传与传统的图片上传方式有一些不一样 如果你有幸看到这篇文章,恭喜你,你可以完美解决了. 话不多说,前后端代码一并奉上: (基于springmvc ) @Controller @Reque ...
- JAVA通过阿里云OSS存储实现图片上传功能
一.前置准备 首先我们需要在阿里云注册账号,实名认证后开通OSS功能,点击进入OSS功能的管理平台 进入概览页面后,点击Bucket列表,创建一个Bucket(相当于一个存放文件的文件夹) 关键是要 ...
- java canvas添加图片上传_HTML5 canvas画图及图片上传服务器
上一个教程中我们实现了使用html5 canvas来制作涂鸦画板的效果,在这个教程中,我们将讲解如何将画好的图片上传到服务器上. 最后的效果如下图,当点击"开始画图"按钮,将在ca ...
- java多图片上传json_SpringMVC框架五:图片上传与JSON交互
在正式图片上传之前,先处理一个细节问题: 每一次发布项目,Tomcat都会重新解压war包,之前上传过的图片会丢失 为了解决这个问题:可以不在Tomcat下保存图片,而是另找一个目录. 上传图片: 在 ...
- java标量替换_JAVA逃逸分析、栈上分配、标量替换、同步消除
一.逃逸分析 逃逸分析是编译语言中的一种优化分析,而不是一种优化的手段.通过对象的作用范围的分析,为其他优化手段提供分析数据从而进行优化. 逃逸分析包括: 全局变量赋值逃逸 方法返回值逃逸 实例引用发 ...
- java中上传图片的原理_js实现图片上传预览原理分析
目前网上有很多支持图片上传时进行预览的插件,功能完备,界面优雅,使用起来也很方便.一直以来也就只是用用,没有想过这些插件背后的实现原理.趁着今天有点时间,也来学习学习. 追根溯源 设想 一开始,按照我 ...
最新文章
- hibernate相关收集
- 第十五届全国大学生智能汽车竞赛全国总决赛提交技术报告通知
- git代码回滚的几种方式
- 全明星基金季卫东: 重仓新经济冠军,投资“幸福生活“
- 判断目录是否存在并创建mkdir
- linux中权限对文件和目录的意义
- Angular使用Console.log()打印出来的数据没问题,点击详情后数据变了
- First集、Follow集
- Mysiam锁模式 innodb锁模式 是什么区别
- Unity3d资源包的使用心得
- hive sql 添加字段以及修改字段
- 图灵机器人api接入测试
- Javo 基础 流的分类
- Mac上如何完美的转换epub至mobi供kindle观看
- 聊聊Hadoop DistCp的数据切分处理方式
- 删除linkinfo.dll
- XJTU第八周大计基编程作业
- 0基础学习Linux运维的必经之路
- 半导体设备基本通信标准介绍系列之-开篇
- VC 工程中包含 .c 或cpp文件编译时产生的.pch预编译头错误(C1853)
热门文章
- IDE 插件新版本发布,总有一个功能帮到你——开发部署提速 8 倍
- 互联网全域降维攻击战略概述
- 十年磨一剑:从2009启动“去IOE”工程到2019年OceanBase拿下TPC-C世界第一
- 如何抢占云栖大会C位?史上最强强强攻略来了
- 支付宝这些程序员要逆天,滑板、画漫画、写科幻小说、航拍,玩得太溜
- 彻底理解内存泄漏,memory leak
- 十强决赛即将拉开帷幕!TECHSPARK星星之火IT创新大赛诚邀您观赛
- 数字时代企业信息安全如何保障? VMware原生安全前来“保驾护航”
- Nutanix企业云助力嘉里大通提升核心竞争力
- 聚焦技术和实践,腾讯全面揭秘基础设施和大数据演进之路