kindeditor java上传_KindEditor的使用和上传图片的后台处理
标签:
应用环境:struts2,jsp。IE8下测试通过。
kindeditor版本为3.5.4,官网下载后解压,取plugins、skins文件夹和kindeditor.js置于Web工程的WebRoot下。本文仅简单介绍如何使用kindeditor,并实现图片上传功能,页面上的提交功能未予实现。
先来看页面
[java] view plaincopy
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
kindeditor测试页面
KE.show({
id:‘content‘, //下面的textarea的ID
height:‘500px‘,
resizeMode:0,
skinType:‘default‘,
autoOnsubmitMode:‘true‘,
//items选项可以去掉你不想要的功能,比如此处去掉上传flash的功能。没有这一项则默认开启所有功能
items : [
‘source‘, ‘|‘, ‘fullscreen‘, ‘undo‘, ‘redo‘, ‘print‘, ‘cut‘, ‘copy‘, ‘paste‘,
‘plainpaste‘, ‘wordpaste‘, ‘|‘, ‘justifyleft‘, ‘justifycenter‘, ‘justifyright‘,
‘justifyfull‘, ‘insertorderedlist‘, ‘insertunorderedlist‘, ‘indent‘, ‘outdent‘, ‘subscript‘,
‘superscript‘, ‘|‘, ‘selectall‘, ‘-‘,
‘title‘, ‘fontname‘, ‘fontsize‘, ‘|‘, ‘textcolor‘, ‘bgcolor‘, ‘bold‘,
‘italic‘, ‘underline‘, ‘strikethrough‘, ‘removeformat‘, ‘|‘, ‘image‘,
‘advtable‘, ‘hr‘, ‘emoticons‘, ‘link‘, ‘unlink‘, ‘|‘, ‘about‘
],
imageUploadJson:‘${pageContext.request.contextPath}/component/kindeditor/uploadImage.do‘
});
kindeditor测试页面
(提交快捷键: Ctrl + Enter)
后台程序的处理
[java] view plaincopy
package org.wusq.ssx.component.kindeditor;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.PrintWriter;
import java.io.UnsupportedEncodingException;
import java.util.Date;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts2.ServletActionContext;
import org.apache.struts2.dispatcher.multipart.MultiPartRequestWrapper;
import org.springframework.stereotype.Controller;
import org.wusq.ssx.util.ImageUtils;
import com.opensymphony.xwork2.ActionSupport;
/**
* KindEditor测试类
* @author wusq
* @since 2011-05-05
*/
@Controller
public class KindEditor extends ActionSupport{
private static final long serialVersionUID = 6624518147834729694L;
//图片对象
private File imgFile;
//图片宽度
private String imgWidth;
//图片高度
private String imgHeight;
//图片对齐方式
private String align;
//图片标题
private String imgTitle;
public String uploadImage() throws Exception{
MultiPartRequestWrapper wrapper = (MultiPartRequestWrapper) ServletActionContext.getRequest();
//获得图片名字
String imgName = wrapper.getFileNames("imgFile")[0];
//获得图片后缀名
String fileExt = imgName.substring(imgName.lastIndexOf(".")).toLowerCase();
//重新生成图片名字
String imgN = new Date().getTime() + fileExt;
//图片在服务器上的绝对路径。编辑器并没有提供删除图片功能,此路径以后可以用于后台程序对图片的操作
String serverPath = "D://Program Files//Apache Software Foundation//Tomcat 6.0//webapps//ssx//uploadimage//";
//页面的引用地址
String savePath = "http://127.0.0.1:8080/ssx/uploadimage/";
//实际应用中鉴于地址的可变性,此处的两个path可以动态生成或从配置文件读取
kEUploadImage(ServletActionContext.getRequest(), ServletActionContext.getResponse(), imgFile, imgTitle, imgWidth, imgHeight, imgN, savePath, serverPath);
return null;
}
void kEUploadImage(HttpServletRequest request, HttpServletResponse response, File imgFile, String imgTitle, String imgWidth, String imgHeight, String imgName, String savePath, String serverPath)
throws FileNotFoundException, IOException{
//将图片写入服务器
ImageUtils.uploadToServer(imgFile, serverPath, imgName);
//页面回显
String id = "content";
String url = savePath + imgName;
String border = "0";
String result ="
parent.KE.plugin[/"image/"].insert(/""
+ id
+ "/",/""
+ url
+ "/",/""
+ imgTitle
+ "/",/""
+ imgWidth
+ "/",/""
+ imgHeight
+ "/",/""
+ border + "/""
+");
// -->";
PrintWriter out = null;
out = encodehead(request, response);
out.write(result);
out.close();
}
PrintWriter encodehead(HttpServletRequest request,HttpServletResponse response){
try {
request.setCharacterEncoding("utf-8");
response.setContentType("text/html; charset=utf-8");
return response.getWriter();
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
return null;
} catch (IOException e) {
e.printStackTrace();
return null;
}
}
public File getImgFile() {
return imgFile;
}
public void setImgFile(File imgFile) {
this.imgFile = imgFile;
}
public String getImgWidth() {
return imgWidth;
}
public void setImgWidth(String imgWidth) {
this.imgWidth = imgWidth;
}
public String getImgHeight() {
return imgHeight;
}
public void setImgHeight(String imgHeight) {
this.imgHeight = imgHeight;
}
public String getAlign() {
return align;
}
public void setAlign(String align) {
this.align = align;
}
public String getImgTitle() {
return imgTitle;
}
public void setImgTitle(String imgTitle) {
this.imgTitle = imgTitle;
}
}
引用的工具类
[java] view plaincopy
package org.wusq.ssx.util;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
/**
* 图片处理工具类
* @author wusq
* @since 2011-05-05
*/
public class ImageUtils {
/**
* 图片上传到服务器的方法
* @param upload 图片文件
* @param serverPath 保存在服务器的路径
* @param imgName 图片名字
* @since 2011-05-05
*/
public static void uploadToServer(File upload, String serverPath, String imgName) throws FileNotFoundException, IOException{
File dirPath = new File(serverPath);
if(!dirPath.exists()){
dirPath.mkdirs();
}
String path = dirPath + "//" + imgName;
FileOutputStream fos = new FileOutputStream(path);
FileInputStream fis = new FileInputStream(upload);
byte[] buffer = new byte[1024];
int len = 0;
while ((len = fis.read(buffer)) > 0) {
fos.write(buffer, 0, len);
}
fos.close();
fis.close();
}
}
转自:
标签:
kindeditor java上传_KindEditor的使用和上传图片的后台处理相关推荐
- kindeditor java上传_富文本编辑器kindeditor上传图片的配置方法
[导读]这篇文章主要介绍了使用富文本编辑器上传图片实例详解的相关资料,需要的朋友可以参考下 富文本编辑器上传图片 一.导入kindeditor的js 二.将kindeditor与一个文本域textar ...
- java上传微博图床_php上传图片到微博图床
微博是个好图床,上传后就可以通过一个url来访问了.今天就用php来上传图片到微博,这也是来自sf的一个问题, 里面还提到一个python版本. 有2种方式实现上传图片: 如果要用 http://pi ...
- kindeditor图片上传 struts2实现
一.kindeditor以及struts2部署搭建不再赘述,如须要请參考kindeditor用法 Struts2框架搭建 二.kindeditor图片上传所依赖jar包在kindeditor\jsp\ ...
- kindeditor图片上传 jsp版
经过了那么长时间的搜索,看了好多有关kindeditor图片上传的东西,各种方法也试过了,但总是报服务器发生障碍,今天终于解决了!!!拿出来给大家分享!!! 首先在官网下载kindeditor压缩包, ...
- kindeditor扩展粘贴截图功能修改图片上传路径并通过webapi上传图片到图片服务器...
2019独角兽企业重金招聘Python工程师标准>>> kindeditor是一个非常好用的富文本编辑器,它的简单使用我就不再介绍了. 而kindeditor却对图片的处理不够理想. ...
- java上传视频代码下载_java 实现视频上传
[实例简介] java上传视频转码播放的一个demo,实现java上传视频.转码.截图和播放功能 [实例截图] [核心代码] java视频上传,转码,播放实现 └── java视频上传,转码,播放实现 ...
- java上传文件功能_Java MemoryMapped文件的功能
java上传文件功能 Java MemoryMapped文件的功能 在JDK 1.4中,内存映射文件的一个有趣功能被添加到Java中,该功能允许将任何文件映射到OS内存以进行有效读取. 内存映射文件可 ...
- java 上传文件注意事项
java 上传文件注意事项 1.文件名有特殊字符的情况,所以最好是文件名前台url编码,后台再url解码,这点在下载的时候也一样 2.文件大小一定要设置,spring boot 有默认. 3.文件名校 ...
- java 上传文件到服务器_java上传文件到OSS云服务器(二)
上篇文章中已经把接口端和service业务层写了,这次就把OSS上传文件的工具类补上. 一.首先配置好OSS服务器各项节点,这是在springboot中appliaction.yml配置文件中的写法. ...
- java微信上传本地视频教程_java微信开发之上传下载多媒体文件,java上传下载_PHP教程...
java微信开发之上传下载多媒体文件,java上传下载 回复图片.音频.视频消息都是需要media_id的,这个是需要将多媒体文件上传到微信服务器才有的. 将多媒体文件上传到微信服务器,以及从微信服务 ...
最新文章
- jQuery Mobile的学习时间bottonbutton的事件学习
- Python 技巧篇 - 英文单词首字母大小写转换功能实例演示,字符串切片实现
- GDCM:gdcm::Fragment的测试程序
- 基于Nexys4DDR的数字时钟设计
- 科学计算机eq7,科学计算器HiEdu 580 Scientific Calculator
- RUP大讲堂(第三讲):如何建立软件产品的愿景
- mysql双活存储容量 TB_Mysql双活方案 - osc_fted3syf的个人空间 - OSCHINA - 中文开源技术交流社区...
- 【servlet】搭建servlet环境
- 计算机网络—3网络层(路由选择协议、路由表的生成)
- win7工作组计算机无法连接打印机,win7无法访问共享打印机怎么解决
- iOS视频转Gif(附example code)
- 五万字 | Hive知识体系保姆级教程
- 优化算法—人工蜂群算法(ABC)
- selenium.common.exceptions.SessionNotCreatedException浏览器版本不匹配报错
- 伦敦旅游必玩的密室逃脱体验——《神探夏洛克:官方现场游戏》
- kali学习-被动信息收集-DNS相关
- 中诚信报告预计2019年中国GDP增长率约6.3%
- 试推导取自总体X(期望为μ,方差为σ^2)的样本X1,X2...Xn的样本方差S^2的期望
- 手机投屏到电脑屏幕,win10自带功能很好用
- shell编程实例1--参数表示
热门文章
- 微信小程序弹框滑动冒泡,外层页面也被滑动问题
- 马尔科夫区制转移向量自回归模型,MSVAR模型,MS-VAR模型的使用和操作过程
- java8分组求和_java8 实现分组求和,平均等数据统计
- 联想m7216更换墨粉流程图_联想M7216打印机加墨粉后还显示墨粉用完是为什么?...
- 昂达平板不能开机刷机_昂达平板电脑怎么刷机?昂达平板电脑刷机教程
- 大数据SQL如何实现笛卡尔积
- STM32F407极简串口设置
- JQuery AJAX 的表单提交
- 星舆科技北斗高精度定位网启动北斗三号服务
- 宾馆客房管理系统Mysql数据库课程设计