xhEditor的环境搭建请参考http://blog.csdn.net/itmyhome1990/article/details/38422255,这时我们打开图片功能 是没有上传按钮的

如果想要出现上传按钮,在xhEditor设置以下参数:

html5Upload : false                     //此属性必须为false

upImgUrl : "ImgUpload.action" //上传服务器接口

onUpload : insertUpload            //服务器返回信息,JSON格式


一、前台代码

<script type="text/javascript">
$(function() {
$('#content').xheditor( {
tools : 'full', //也可自定义tools,这里为full
html5Upload : false, //此属性必须为false 否则无法上传图片
upImgUrl : "ImgUpload.action",
onUpload : uploadImg
});
function uploadImg(data) {
//...回调函数
}
})
</script>
<body>
<div align="center">
<textarea rows="20" cols="110" id="content"></textarea>
</div>
</body>

二、Struts2上传代码

public class ImgUploadAction extends ActionSupport {
private String err = "";
private String msg; //返回信息
private File filedata; //上传文件
private String filedataFileName; //文件名 public String imgUpload() {
//获取response、request对象
ActionContext ac = ActionContext.getContext();
HttpServletResponse response = (HttpServletResponse) ac.get(ServletActionContext.HTTP_RESPONSE);
HttpServletRequest request = (HttpServletRequest) ac.get(ServletActionContext.HTTP_REQUEST); response.setContentType("text/html;charset=gbk"); PrintWriter out = null;
try {
out = response.getWriter();
} catch (IOException e1) {
e1.printStackTrace();
} String saveRealFilePath = ServletActionContext.getServletContext().getRealPath("/upload");
File fileDir = new File(saveRealFilePath);
if (!fileDir.exists()) { //如果不存在 则创建
fileDir.mkdirs();
}
File savefile;
savefile = new File(saveRealFilePath + "/" + filedataFileName);
try {
FileUtils.copyFile(filedata, savefile);
} catch (IOException e) {
err = "错误"+e.getMessage();
e.printStackTrace();
}
String fileName = request.getContextPath() + "/upload/" + filedataFileName;
msg = "{\"err\":\"" + err + "\",\"msg\":\"" + fileName + "\"}";
out.print(msg); //返回msg信息
return null;
} public String getErr() {
return err;
} public void setErr(String err) {
this.err = err;
} public String getMsg() {
return msg;
} public void setMsg(String msg) {
this.msg = msg;
} public File getFiledata() {
return filedata;
} public void setFiledata(File filedata) {
this.filedata = filedata;
} public String getFiledataFileName() {
return filedataFileName;
} public void setFiledataFileName(String filedataFileName) {
this.filedataFileName = filedataFileName;
} }

三、Struts2配置文件

<struts>
<package name="build" extends="struts-default">
<action name="ImgUpload" method="imgUpload"
class="com.itmyhome.ImgUploadAction">
</action>
</package>
</struts>

效果如图:

项目演示源码下载:http://download.csdn.net/detail/itmyhome/7746271

转载请注明出处:http://blog.csdn.net/itmyhome1990/article/details/38491205

xhEditor struts2实现图片上传的更多相关文章

  1. 【HTML5+MVC4】xhEditor网页编辑器图片上传

    准备工作: 创建一个MVC项目中,添加好xhEditor插件 相关用法:http://www.cnblogs.com/xcsn/p/4701497.html 注意事项:xhEditor分为v1.1.1 ...

  2. ASP利用xhEditor编辑器实现图片上传的功能。

    本人这几天在做一个软件,无意中用到xhEditor在线编辑器,这个编辑器虽然看着比较简单,但功能非常强大,大家可以去官网上查看,废话不说了. 这篇文件主要是实现在ASP环境中利用xhEditor编辑器 ...

  3. struts2多图片上传实例【转】

    原文地址:http://blog.csdn.net/java_cxrs/article/details/6004144 描述: 通过struts2实现多图片上传. 我使用的版本是2.2.1,使用的包有 ...

  4. 使用Struts2实现图片上传和拦截器

    今天来分享一个图片上传 现在很多小项目里面基本上都有要显示图片的功能,所以呢图片上传是基本要掌握的啦 一般的图片上传原理就是从本地选择一张图片然后通过io流发布到服务器上去 上传方案基本有三种: 1. ...

  5. DWZ集成的xhEditor编辑器浏览本地图片上传的设置

    有关xhEditor的文件上传配置官方文档链接:http://i.hdu.edu.cn/dcp/dcp/comm/xheditor/demos/demo08.html 一.xhEditor图片上传的配 ...

  6. kindeditor图片上传 struts2实现

    一.kindeditor以及struts2部署搭建不再赘述,如需要请参考kindeditor使用方法 Struts2框架搭建 二.kindeditor图片上传所依赖jar包在kindeditor\js ...

  7. 使用struts2完成ckeditor和图片上传

    代码地址如下:http://www.demodashi.com/demo/12427.html 使用struts2完成ckeditor和ckeditor图片上传 ckeditor版本ckeditor_ ...

  8. xheditor图片上传

    前端步骤:分为三部,这三部做完之后就能正确显示富文本了 1.下载xheditor文件,并按照如下要求进行引入: <!-- xheditor富文本的文件引入 --> <script t ...

  9. jsp\struts1.2\struts2 中文件上传(转)

    jsp\struts1.2\struts2 中文件上传 a.在jsp中简单利用Commons-fileupload组件实现 b.在struts1.2中实现c.在sturts2中实现现在把Code与大家 ...

随机推荐

  1. iOS开发之protocol和delegate

     protocol--协议 协议是用来定义对象的属性,行为和用于回调的.     协议中有两个keyword@private和@optional,@private表示使用这个协议必需要写的方法,@op ...

  2. bootstrap-wysiwyg 结合 base64 解码 .net bbs 图片操作类 (二) 图片裁剪

    图片裁剪参见: http://deepliquid.com/projects/Jcrop/demos.php?demo=thumbnail        一个js插件 http://www.mikes ...

  3. Linux C语言操作MySQL

    原文:Linux C语言操作MySQL 1.MySQL数据库简介 MySQL是一个开源码的小型关系数据库管理系统,体积小,速度快,总体成本低,开源.MySQL有以下特性: (1) 使用C和C++编写, ...

  4. Spring IOC之容器扩展点

    一般来说,一个应用开发者不需要继承ApplicationContext实现类.取而代之的是,Spring IoC容器可以通过插入特殊的整合接口的实现来进行扩展.下面的几点将要讲述这些整合的接口. 1. ...

  5. solr主从复制

    solr主从复制 最近的开发工作涉及到两个模块“任务”和“日周报”.关系是日周报消费任务,因为用户在写日周报的时候,需要按一定的规则筛选当前用户的任务,作为日周报的一部分提交.整个项目采用类似于Orc ...

  6. IntelliJ IDEA 发布13版本——创造java奇迹

    IntelliJ IDEA被公认为业界最好的Java开发平台.此次发布的了13版本,更是集合了与Java EE.Android.Spring.Scala和Gradle最新合作与支持. Java EE  ...

  7. Effective C++ Item 46 当需要投你非成员函数定义模板

    本文senlie原版的,转载请保留此地址:http://blog.csdn.net/zhengsenlie 经验:当我们编写一个 class template, 而它所提供之"与此 temp ...

  8. cocos2d的-X- luaproject的LUA脚本加密

    2014/1/26 更新 近期又发现了一个非常easy的方法,事实上coco2dx已经给我们提供设置loader的方法. 注意:有个局限性,在非android平台下调用pEngine->exec ...

  9. WebIM(5)----将WebIM嵌入到页面中

    在之前的文章中,已经开发了一个简单的WebIM,但是这个WebIM是在独立的页面中的,今天发布的WebIM是一个可以嵌入到自己网页中的版本,你只需添加少量的代码,就可以在页面中嵌入一个WebIM.不过 ...

  10. 【转】Android 系统菜单与自定义菜单

    Android 系统菜单与自定义菜单实现方法如下:系统菜单显示DefaultMenu.java package com.wxz.menu; import com.wxz.menu.R; import  ...