xheditor1.1.5 版本文件上传使用html5-application/octet-stream
Spring3 MVC之前写的上传程序无法支持
@RequestMapping(value = "/upload")
public String uploadFile(Model m, MultipartHttpServletRequest request) throws IOException {
String path = UploadController.class.getResource("/").getPath().split("WEB-INF")[0] + "upload/";
Iterator<String> iterator = request.getFileNames();
while (iterator.hasNext()) {
String next = iterator.next();
List<MultipartFile> files = request.getFiles(next);
for (int i = 0; i < files.size(); i++) {
if (!files.get(i).isEmpty()) {
byte[] bytes = files.get(i).getBytes();
String uploadFile = UploadUtils.generateFilename(path, UploadUtils.getExtension(files.get(i).getOriginalFilename(), "jpg"));
File file = new File(uploadFile);
FileOutputStream fos = new FileOutputStream(file);
fos.write(bytes);
fos.close();
m.addAttribute("url", uploadFile.replace(path, "/upload"));
m.addAttribute("local", uploadFile);
}
}
}
return "upload";
}
需要改造如下:
@RequestMapping(value = "/upload", method = RequestMethod.POST)
public String upload(Model m, HttpServletRequest request) throws IOException {
String path = UploadController.class.getResource("/").getPath().split("WEB-INF")[0] + "upload/";
if ("application/octet-stream".equals(request.getContentType())) { //HTML 5 上传
try {
String dispoString = request.getHeader("Content-Disposition");
int iFindStart = dispoString.indexOf("filename =\"") + 10;
int iFindEnd = dispoString.indexOf("\"", iFindStart);
String sFileName = dispoString.substring(iFindStart, iFindEnd);
int i = request.getContentLength();
byte buffer[] = new byte[i];
int j = 0;
while (j < i) { //获取表单的上传文件
int k = request.getInputStream().read(buffer, j, i - j);
j += k;
}
if (buffer.length >= 0) { //文件是否为空
String uploadFile = UploadUtils.generateFilename(path, UploadUtils.getExtension(sFileName, "jpg"));
File file = new File(uploadFile);
OutputStream out = new BufferedOutputStream(new FileOutputStream(file, true));
out.write(buffer);
out.close();
m.addAttribute("url", uploadFile.replace(path, "/upload"));
m.addAttribute("local", uploadFile);
}
} catch (Exception ex) {
m.addAttribute("err", ex.getMessage());
}
}
return "upload";
}
分享到:
相关推荐
XHEditor-1.1.9是一个开源的JavaScript组件,它基于HTML5技术,支持多种浏览器环境,包括IE6+、Firefox、Chrome、Safari以及Opera等主流浏览器。这个版本的编辑器优化了多项功能,提升了整体性能,同时保持了良好的...
xheditor-0.9.8-zh-cn.zip 编辑器xheditor-0.9.8-zh-cn.zip 编辑器xheditor-0.9.8-zh-cn.zip 编辑器xheditor-0.9.8-zh-cn.zip 编辑器xheditor-0.9.8-zh-cn.zip 编辑器
inflating: zuitu/static/js/xheditor/xheditor_emot/msn/3.gif inflating: zuitu/static/js/xheditor/xheditor_emot/msn/30.gif inflating: zuitu/static/js/xheditor/xheditor_emot/msn/31.gif inflating: ...
5. **安全性**:XHEditor对用户输入的数据进行安全过滤,有效防止XSS攻击,保障了网站的安全性。 三、XHEditor 1.2.2的安装与使用 1. **下载与引入**:首先,你需要从官方或者可靠的源下载xheditor-1.2.2.zip文件...
xheditor在asp.net中使用时,如果textbox控件在UpdatePanel使用...在本文件在包含完整的xheditor-1.1.13及其demos。在demos文件夹里的Default2.aspx及Default2.aspx.cs是解决textbox控件在UpdatePanel的正常使用方法。
xheditor编辑器.................xheditor编辑器.................xheditor编辑器.................xheditor编辑器.................xheditor编辑器.................
1. **下载与引入**: 下载XHEditor-v1.2.2压缩包,将`xheditor-1.2.2`文件夹内的JavaScript和CSS文件引入到项目中。 2. **初始化编辑器**: 在HTML中创建一个`textarea`元素,并通过JavaScript调用XHEditor进行初始化...
在"spring3MVC框架demo"中,包含了两个关键功能的实现:文件上传下载功能和使用xheditor发布消息功能。 首先,我们来详细了解一下Spring3MVC的基础配置。在Spring3MVC项目中,配置通常包括以下几个部分: 1. **web...
xheditor-1.1.7 编辑器插件 包含xheditor所含关键文件及jquery,导入web工程即可使用
xheditor是一款基于浏览器端的富文本编辑器,支持多种浏览器环境,包括IE6+、Firefox、Chrome、Safari和Opera等。其1.1.6版本是经过多代迭代优化后的一个稳定版本,主要特点是轻量级、易用性强且功能丰富。xheditor...
5. **多语言支持**:为了满足全球用户需求,XHEditor内置了多种语言包,包括中文、英文等。 6. **可扩展性**:通过插件机制,开发者可以自定义或添加更多功能,如表情、代码高亮等。 7. **兼容性**:考虑到浏览器...
《XHEditor-1.2.1:全能编辑器的深度解析与应用指南》 XHEditor是一款在Web开发中广泛使用的开源富文本编辑器,它以其强大的功能、易用性和高度可定制性赢得了开发者们的青睐。XHEditor-1.2.1是该编辑器的一个稳定...
3. **多语言支持**:xheditor不仅支持中文,还提供了英文和其他多语言版本,方便不同地区的用户使用。 4. **自定义配置**:开发者可以根据项目需求,通过配置文件定制编辑器的功能和样式,实现高度个性化。 5. **...
xhEditor文件上传的Java实现提供了一种灵活、易用的在线富文本编辑器解决方案,支持图片上传、文件上传等多种功能。开发者可以根据需要,选择合适的编辑器插件和参数设置,实现个性化的编辑器功能。
5. **本地上传文件**:支持用户直接在编辑器中上传图片或其他文件,无需跳转页面,简化操作流程。 三、xheditor的使用 1. **引入库文件**:首先需要在HTML页面中引入xheditor的JavaScript和CSS文件,以及必要的语言...
html5Upload:是否开启HTML5上传支持 参数值:true(允许),false(不允许),默认为true允许 说明:本功能需要浏览器支持HTML5上传 备注:1.0.0 Final新添加 upMultiple:允许一次上传多少个文件 参数值:大于0的数值,...
【xheditor-1】是一款基于JavaScript的开源富文本编辑器,主要用于网页中的文本编辑功能。这个版本是1.1.5,据描述测试后表现出良好的可用性,开发者认为它非常实用,尤其适合那些对网页设计要求不高的项目。由于其...
将下载的压缩文件解压缩,上传其中的xheditor-zh-cn.min.js以及xheditor_emot、xheditor_plugins和xheditor_skin三个文件夹到网站相应文件夹中。 注:如果您网站中没有使用jQuery框架,也请一并上传jquery文件夹中的...
xhEditor是一个基于jQuery开发的简单迷你并且高效的可视化HTML编辑器,基于网络访问并且兼容IE 6.0+,Firefox 3.0+,Opera 9.6+,Chrome 1.0+,Safari 3.22+。