- 浏览: 126991 次
- 性别:
- 来自: 上海
文章分类
最新评论
-
calosteward:
赞一个。 谢谢分享了~非常有用。 —————————————— ...
项目里用到的Jquery,json,struts2结合 -
zhouylf:
文章都还行,就是变量名起的好恶心,“wzXxfbPdtp”还 ...
Springmvc3实现文件上传 -
zongshoujin:
老大 List和Map 在前台解析不出来,我看了下 是j ...
struts2返回JSON,jquery解析JSON(返回的可能是LIST,MAP,对象,单个值) -
kfjihailong:
269565478@qq.com 求源码
springmvc+dwz+xheditor实现上传图片及swf 视频 -
eric.zhang:
jieAmei 写道能给我发一下这个代码吗?谢谢,452909 ...
dwz+jquery+fileupload+springmvc实现文件上传 及图片预览
注意:如果使用了apache fileupload上传方法,则springmvc-servlet.xml的配置文件里不能再有multipartResolver的配置,两者不能共存。<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver" />
1前台JSP代码
兼容IE6,在线编辑器需要用如下的方法去写:
<textarea class="editor" name="gjnr" id="gjnr" name="description" rows="20" cols="83"
tools="Cut,Copy,Paste,Pastetext,Blocktag,Fontface,FontSize,Bold,Italic,Underline,Strikethrough,FontColor,BackColor,SelectAll,Removeformat,Align,List,Outdent,Indent,Link,Unlink,Img,Flash,Table,Source,Preview,Print,Fullscreen"
upLinkUrl="${ctx}/fileupload/doXheditorUpload?flag=zip" upLinkExt="zip,rar,txt,doc,docx"
upImgUrl="${ctx}/fileupload/doXheditorUpload?flag=img" upImgExt="jpg,jpeg,gif,png"
upFlashUrl="${ctx}/fileupload/doXheditorUpload?flag=swf" upFlashExt="swf"
skin="vista"></textarea>
2后台controller 处理xheditor的文件上传 也是利用apache的fileupload组件实现
下面是xheditor的截图:
1前台JSP代码
$(document).ready(function(){ //初始化在线编辑器 //设置在线编辑器上传各类文件对应的url $("#newGJFrom #gjnr").xheditor({ upLinkUrl:'${ctx}/fileupload/doXheditorUpload?flag=zip', upLinkExt:'zip,rar,txt', upImgUrl:'${ctx}/fileupload/doXheditorUpload?flag=img', upImgExt:'jpg,jpeg,gif,png', upFlashUrl:'${ctx}/fileupload/doXheditorUpload?flag=swf', upFlashExt:'swf', tools: 'Cut,Copy,Paste,Pastetext,Blocktag,Fontface,FontSize,Bold,Italic,Underline,Strikethrough,FontColor,BackColor,SelectAll,Removeformat,Align,List,Outdent,Indent,Link,Unlink,Img,Flash,Table,Source,Preview,Print,Fullscreen', skin: 'vista' }); //删除编辑器的 关于图标 $("span a[name='About']").remove(); }); //其他代码省略 <tr> <td colspan="3"> <form:textarea name="gjnr" path="gjnr" id="gjnr" rows="20" cols="83"/> </td> </tr>
兼容IE6,在线编辑器需要用如下的方法去写:
<textarea class="editor" name="gjnr" id="gjnr" name="description" rows="20" cols="83"
tools="Cut,Copy,Paste,Pastetext,Blocktag,Fontface,FontSize,Bold,Italic,Underline,Strikethrough,FontColor,BackColor,SelectAll,Removeformat,Align,List,Outdent,Indent,Link,Unlink,Img,Flash,Table,Source,Preview,Print,Fullscreen"
upLinkUrl="${ctx}/fileupload/doXheditorUpload?flag=zip" upLinkExt="zip,rar,txt,doc,docx"
upImgUrl="${ctx}/fileupload/doXheditorUpload?flag=img" upImgExt="jpg,jpeg,gif,png"
upFlashUrl="${ctx}/fileupload/doXheditorUpload?flag=swf" upFlashExt="swf"
skin="vista"></textarea>
2后台controller 处理xheditor的文件上传 也是利用apache的fileupload组件实现
import java.io.File; import java.io.IOException; import java.io.PrintWriter; import java.io.Serializable; import java.util.HashMap; import java.util.Iterator; import java.util.List; import java.util.Map; import java.util.UUID; import javacommon.base.BaseQuery; import javax.servlet.ServletException; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.commons.fileupload.FileItem; import org.apache.commons.fileupload.FileUploadException; import org.apache.commons.fileupload.disk.DiskFileItemFactory; import org.apache.commons.fileupload.servlet.ServletFileUpload; import org.springframework.stereotype.Controller; import org.springframework.ui.ModelMap; import org.springframework.web.bind.annotation.RequestMapping; @Controller @RequestMapping("/fileupload") public class FileUploadController { /** * 在线编辑器 上传单个本地图片 处理类 */ @RequestMapping("/doXheditorUpload") public void doImgUpload(ModelMap model, BaseQuery query,HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html; charset=UTF-8"); response.setHeader("Cache-Control", "no-cache"); DiskFileItemFactory fac = new DiskFileItemFactory(); ServletFileUpload upload = new ServletFileUpload(fac); upload.setHeaderEncoding("utf-8"); String err = ""; //用于显示在在线编辑器里,图片的路径 String newFileName = ""; //允许的图片格式 String fileExt = ""; String flag = request.getParameter("flag"); long maxSize = 0; if("swf".equals(flag)){ fileExt = "swf"; maxSize = 1024*1024*10; } if("img".equals(flag)){ fileExt = "jpg,jpeg,bmp,gif,png"; maxSize = 1024*1024; } if("media".equals(flag)){ fileExt = "wmv,avi,wma,mp3,mid"; maxSize = 1024*1024*10; } if("zip".equals(flag)){ fileExt = "zip,rar,txt"; maxSize = 1024*1024*10; } try { List<FileItem> items = upload.parseRequest(request); Map<String, Serializable> fields = new HashMap<String, Serializable>(); Iterator<FileItem> iter = items.iterator(); while (iter.hasNext()) { FileItem item = (FileItem) iter.next(); if (item.isFormField()) fields.put(item.getFieldName(), item.getString()); else fields.put(item.getFieldName(), item); } String folder=request.getSession().getServletContext().getRealPath(""); String savePath = folder+File.separator+"xheditorUpload"+File.separator; File f1 = new File(savePath); System.out.println("---上传保存的目录:"+savePath); if (!f1.exists()) { f1.mkdirs(); } /*获取表单的上传文件*/ FileItem uploadFile = (FileItem)fields.get("filedata"); /*获取文件上传路径名称*/ String fileNameLong = uploadFile.getName(); /*获取文件扩展名*/ /*索引加1的效果是只取xxx.jpg的jpg*/ String extensionName = fileNameLong.substring(fileNameLong.lastIndexOf(".") + 1); //System.out.println("extensionName:" + extensionName); /*检查文件类型*/ if (("," + fileExt.toLowerCase() + ",").indexOf("," + extensionName.toLowerCase() + ",") < 0){ printInfo(response, "不允许上传此类型的文件", ""); return; } /*文件是否为空*/ if (uploadFile.getSize() == 0){ printInfo(response, "上传文件不能为空", ""); return; } /*检查文件大小*/ if (uploadFile.getSize() > maxSize){ printInfo(response, "上传文件的大小超出限制,最大不能超过"+maxSize+"M", ""); return; } /*文件存储的相对路径*/ String saveDirPath = "/xheditorUpload/"; /*文件存储在容器中的绝对路径*/ String saveFilePath = request.getSession().getServletContext().getRealPath("") + saveDirPath; /*构建文件目录以及目录文件*/ File fileDir = new File(saveFilePath); if (!fileDir.exists()) {fileDir.mkdirs();} /*重命名文件*/ String filename = UUID.randomUUID().toString(); File savefile = new File(saveFilePath + filename + "." + extensionName); /*存储上传文件*/ uploadFile.write(savefile); //这个地方根据项目的不一样,需要做一些特别的定制。 newFileName = "/bmxxfb"+saveDirPath + filename + "." + extensionName; } catch (Exception ex) { System.out.println(ex.getMessage()); newFileName = ""; err = "错误: " + ex.getMessage(); } printInfo(response, err, newFileName); } /** * 使用I/O流输出 json格式的数据 * @param response * @param err * @param newFileName * @throws IOException */ public void printInfo(HttpServletResponse response, String err, String newFileName) throws IOException { PrintWriter out = response.getWriter(); //String filename = newFileName.substring(newFileName.lastIndexOf("/") + 1); out.println("{\"err\":\"" + err + "\",\"msg\":\"" + newFileName + "\"}"); out.flush(); out.close(); } public static String getParameterByName(Iterator<FileItem> it,String key){ Iterator i = it; String res=""; while (i.hasNext()) { FileItem fi = (FileItem) i.next(); //System.out.println(fi.getFieldName()+":"+fi.getString()); if (fi.getFieldName().equals(key)) { res = fi.getString(); break; } } return res; } }
下面是xheditor的截图:
评论
3 楼
kfjihailong
2013-01-07
269565478@qq.com 求源码
2 楼
a442579302
2012-09-14
楼主还在吗?
请问,ModelMap model, BaseQuery query 这两个参数是干什么的
请问,ModelMap model, BaseQuery query 这两个参数是干什么的
1 楼
llww83
2012-06-28
请问可以发份源码吗? 549135295@qq.com
发表评论
-
一些常用的正则表达式
2011-12-01 21:21 1269<!DOCTYPE html PUBLIC " ... -
50个必备的实用jQuery代码段
2011-10-13 10:56 1051本文会给你们展示50个jq ... -
Jquery uploadify实现文件上传 flash方式
2011-09-25 14:28 2833使用 Jquery的插件 uploadify 实现文件的上传 ... -
Springmvc3实现文件上传
2011-09-23 17:48 3983Spring自己封装了文件上传功能,可以利用 Multipar ... -
dwz+jquery+fileupload+springmvc实现文件上传 及图片预览
2011-09-23 17:01 79881 前台jsp:文件的上传利用了iframe实现局部刷新功能。 ... -
jquery实现table 行拖动排序
2011-09-23 16:41 3285话不多说,代码如下, 需要用到Jquery的如下JS: jqu ... -
js操作table控制tr jquery 两个table左右移动
2011-09-23 16:16 4733一.关于动态操作select的 ... -
springmvc 学习笔记
2011-06-23 10:16 3387web.xml <?xml version=&quo ... -
Jquery读取本地文件内容
2011-05-12 14:48 5210$("#one a").css(&qu ... -
jQuery性能优化
2011-05-12 14:10 7451.总是从ID选择器开始继 ... -
字符数组和数值数组排序sort
2011-05-12 14:02 11641.字符数组 var members=["Chi ... -
Jquery Ajax 提交 级联实现
2011-05-12 13:55 1196页面代码 <div> 省 ... -
用于验证同时可以给一个或多个用户发送邮件的邮件地址验证:
2011-05-12 13:46 1111用于验证同时可以给一个或多个用户发送邮件的邮件地址验证: ... -
Jquery ajax请求Struts2 action 返回xml数据
2011-05-12 13:42 1908Jquery 发送ajax请求,action 或servlet ... -
项目里用到的Jquery,json,struts2结合
2011-05-12 13:19 1525struts.xml <?xml version=& ... -
dwr spring整合
2011-03-18 13:50 788Ajax,它使浏览器可以为 ... -
Jquery基础知识
2011-01-04 14:08 8891.特点: 小巧 功能强 跨浏览器 ...
相关推荐
Java基于Spring+SpringMVC+MyBatis实现的学生信息管理系统源码,SSM+Vue的学生管理系统。 Java基于Spring+SpringMVC+MyBatis实现的学生信息管理系统源码,SSM+Vue的学生管理系统。 Java基于Spring+SpringMVC+...
总结来说,"springmvc+DWZ+ibatis"的整合提供了从前端到后端的完整解决方案,包括页面展示、用户交互和数据管理。这种组合在实际开发中十分常见,既能保证开发效率,又能确保应用的稳定性和可维护性。对于开发者来说...
完善的Spring+SpringMVC+Mybatis+easyUI后台管理系统(RESTful API+redis).zip 完善的Spring+SpringMVC+Mybatis+easyUI后台管理系统(RESTful API+redis).zip 完善的Spring+SpringMVC+Mybatis+easyUI后台管理系统...
1:SpringMVC+Mybatis+DWZ+Orcale整合 2:Oracle数据库账户Scott 密码123 自己根据实际情况修改 3:表在数据库里 4:只有”我的测试“一个可用,其余没做,错误页处理不完全,我注释了! 5:默认有登陆页面,账号密码...
Spring+SpringMVC+MyBatis+Shiro+MySQL+Redis+Maven+EasyUI+Bootstrap实现的通用权限管理系统。 Spring+SpringMVC+MyBatis+Shiro+MySQL+Redis+Maven+EasyUI+Bootstrap实现的通用权限管理系统 Spring+SpringMVC+...
在IT行业中,构建Web应用程序是常见的任务,而`SpringMVC`、`MyBatis`和`DWZ`是三个非常流行的开源框架,用于实现这一目标。本文将深入探讨这三个框架如何协同工作,以及如何进行整合。 首先,`SpringMVC`是Spring...
在"springMVC+DWZ"的项目中,首先需要配置SpringMVC的DispatcherServlet,设置其映射路径以及加载相关的配置文件,如servlet-context.xml。接着,定义Controller,使用@RequestMapping注解来映射URL,处理HTTP请求。...
基于springmvc+Hibernate实现的在线购物商城.zip基于springmvc+Hibernate实现的在线购物商城.zip基于springmvc+Hibernate实现的在线购物商城.zip基于springmvc+Hibernate实现的在线购物商城.zip基于springmvc+...
《图书管理系统SpringMvc+Mybatis实现详解》 在IT领域,构建高效、稳定的软件系统是至关重要的。本项目“图书管理系统”就是这样一个实例,它利用了SpringMvc和Mybatis两大主流框架,为图书管理提供了全面的解决...
基于spring+springMVC+mybatis+easyui技术实现的医药后台管理系统 项目描述 基于spring+springMVC+mybatis+easyui技术实现的医药管理系统 运行环境 jdk7+tomcat7+mysql+eclipse/IntelliJ IDEA+maven 项目技术...
基于Spring+SpringMVC+Mybatis架构的博客系统:博客管理、图表数据、日志分析、访问记录、图库管理、资源管理、友链通知等。良好的页面预加载,无限滚动加载,文章置顶,博主推荐等。提供 用户端+管理端 的整套系统...
项目描述 在上家公司自己集成的一套系统,用了两个多月的时间完成的:Springboot+Mybatis-plus+ SpringMvc+Shiro+Redis企业级开发系统 Springboot作为容器,使用mybatis作为持久层框架 使用官方推荐的thymeleaf做为...
基于SpringMVC+Spring+MyBatis+Maven项目案例 基于SpringMVC+Spring+MyBatis+Maven项目案例 基于SpringMVC+Spring+MyBatis+Maven项目案例 基于SpringMVC+Spring+MyBatis+Maven项目案例 基于SpringMVC+Spring+MyBatis...
报表后端采用技术: SpringBoot整合SSM(Spring+Mybatis-plus+ SpringMvc),spring security 全注解式的权限管理和JWT方式禁用Session,采用redis存储token及权限信息 报表前端采用Bootstrap框架,结合Jquery Ajax,...
SpringMVC+Spring+Mybatis集成开发环境SpringMVC+Spring+Mybatis集成开发环境SpringMVC+Spring+Mybatis集成开发环境SpringMVC+Spring+Mybatis集成开发环境SpringMVC+Spring+Mybatis集成开发环境SpringMVC+Spring+...
"Shiro+SpringMVC+Redis+MySQL实现单点登录"是一个典型的系统安全架构,它整合了多个技术组件来构建一个高效、可靠的单点登录(Single Sign-On, SSO)解决方案。以下是关于这个主题的详细知识点: 1. **Apache ...
基于SSM(Spring+SpringMVC+Mybatis)的新闻管理系统源码+数据库.zip 基于SSM(Spring+SpringMVC+Mybatis)的新闻管理系统源码+数据库.zip 基于SSM(Spring+SpringMVC+Mybatis)的新闻管理系统源码+数据库.zip 基于SSM...
3、本资源作为“参考资料”如果需要实现其他功能,需要能看懂代码,并且热爱钻研,自行调试。 基于SpringMVC+Spring+MyBatis+Maven项目案例源码+数据库.zip 基于SpringMVC+Spring+MyBatis+Maven项目案例源码+数据库...
在线投票系统-jsp+springMVC+mybatis在线投票系统-jsp+springMVC+mybatis在线投票系统-jsp+springMVC+mybatis在线投票...jsp+springMVC+mybatis在线投票系统-jsp+springMVC+mybatis在线投票系统-jsp+springMVC+mybatis
springMVC+maven+hibernate框架,搭建的过程 可以参考 java进阶(五)------springMVC---springMVC+Hibernate+maven完整搭建运行步骤 http://blog.csdn.net/zzq900503/article/details/49892783