java 上传2(使用java组件fileupload和uploadify)
项目关键包和插件
插件地址:http://www.uploadify.com/documentation
项目结构
uploadify.css设置了cancel的图片路径这里修改一下
uploadify.jsp
| <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> <% String path = request.getContextPath(); String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort() + path + "/"; %> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <base href="<%=basePath%>"> <title>uploadify</title> <link href="<%=basePath%>css/uploadify.css" rel="stylesheet"type="text/css"/> <style type="text/css"> <script type="text/javascript" src="<%=basePath%>/js/jquery-1.6.2.js"></script> // http://www.uploadify.com/documentation/ //The maximum number of files you are allowed to upload.  When this number is reached or exceeded, the <onUploadError> event is triggered.Default Value999 //Default Value'*.*'   (i.e. ‘*.jpg; *.png; *.gif’). errorMsg 完整的错误信息,如果你不重写默认的事件处理器,可以使用‘this.queueData.errorMsg’ 存取完整的错误信息 </script> </head> <body>  <input type="text" name="xxxxxxxxx" /> <div id="some_file_queue"></div> <div id="pregress"></div> | 
后台程序
| @RequestMapping(value="unloadify") public String unloadify(HttpServletRequest request,HttpServletResponse response){ return "/unloadify"; } @RequestMapping(value="unloadifyU",method=RequestMethod.POST) public void unloadifyU(HttpServletRequest request,HttpServletResponse response) throws FileUploadException, Exception{ Map<String,String> map = new HashMap<String,String>(); PrintWriter out = response.getWriter(); //这样获取不到unloadify中设置formData的值,要通过下面方法取(getFieldName,getString),和form中name的值(因为不是form提交) String id=request.getParameter("id"); String idd=request.getParameter("idd"); String someOtherKey=request.getParameter("someOtherKey"); String xxxxxxxxx=request.getParameter("xxxxxxxxx"); File uploadPath = new File("D:\\temp");//上传文件目录 if (!uploadPath.exists()) { uploadPath.mkdirs(); } // 临时文件目录 File tempPathFile = new File("d:\\temp\\buffer\\"); if (!tempPathFile.exists()) { tempPathFile.mkdirs(); } try { DiskFileItemFactory factory = new DiskFileItemFactory(); factory.setSizeThreshold(4096); // 设置缓冲区大小,这里是4kb factory.setRepository(tempPathFile);//设置缓冲区目 ServletFileUpload upload = new ServletFileUpload(factory); upload.setSizeMax(41943040); // 设置最大文件尺寸,这里是40MB List<FileItem> items = upload.parseRequest(request);//得到所有的文件 Iterator<FileItem> i = items.iterator(); while (i.hasNext()) { FileItem fi = (FileItem) i.next(); if(fi.isFormField()){//如果是普通的表单字段 //获取unloadify中设置formData的值,而不是form的值,因为不是form提交所以xxxxxxxxx读取不到 String fieldName = fi.getFieldName(); System.out.println(" name is:" + fi.getFieldName()+"-value:"+ fi.getString());//显示表单内容。 }else{//如果是上传文件,显示文件名。 String fileName = fi.getName(); if (fileName != null) { //检查文件后缀格式 String fileEnd = fileName.substring(fileName.lastIndexOf(".")+1).toLowerCase(); List<String> extList=new ArrayList<String>();//ext后缀校验 extList.add("sql"); extList.add("txt"); if(extList.contains(fileEnd)){ File fullFile = new File(fi.getName()); File savedFile = new File(uploadPath, fullFile.getName()); fi.write(savedFile); }else{ map.put("res", "1"); System.out.print("ext error"); } } } } map.put("res", "0"); System.out.print("upload succeed"); } catch (Exception e) { e.printStackTrace(); } JSONObject jsonObject = JSONObject.fromObject(map); | 
java 上传2(使用java组件fileupload和uploadify)的更多相关文章
- 在C#客户端用HTTP上传文件到Java服务器
		在C#客户端用HTTP上传文件到Java服务器 来源:http://www.cnblogs.com/AndyDai/p/5135294.html 最近在做C / S 开发,需要在C#客户端上传文件到 ... 
- java上传excel文件及解析
		java上传excel文件及解析 CreateTime--2018年3月5日16:25:14 Author:Marydon 一.准备工作 1.1 文件上传插件:swfupload: 1.2 文件上 ... 
- edtftpj让Java上传FTP文件支持断点续传
		在用Java实现FTP上传文件功能时,特别是上传大文件的时候,可以需要这样的功能:程序在上传的过程中意外终止了,文件传了一大半,想从断掉了地方继续传:或者想做类似迅雷下载类似的功能,文件太大,今天传一 ... 
- Java上传文件FTP服务器代码
		1. 在实际的应用重,通常是通过程序来进行文件的上传. 2. 实现java上传文件到ftp服务器中 新建maven项目 添加依赖 <dependency> <groupId>c ... 
- java模拟表单上传文件,java通过模拟post方式提交表单实现图片上传功能实例
		java模拟表单上传文件,java通过模拟post方式提交表单实现图片上传功能实例HttpClient 测试类,提供get post方法实例 package com.zdz.httpclient; i ... 
- java 上传文件到 ftp 服务器
		1. java 上传文件到 ftp 服务器 package com.taotao.common.utils; import java.io.File; import java.io.FileInpu ... 
- 根据短链生成二维码并上传七牛云(Java)
		通过短链生成二维码并上传七牛云(Java) 前言 网上这种帖子其实也是很多,大部分搜出来的是CSDN的,然后点进去一看都几乎一样:所以这次给个自己实践的例子记录. 这次也是通过搜索得到的一部分能实现这 ... 
- java上传组件FileUpload
		如果表单中有文件要上传,也就是有<input type="file" name="name"/> 就需要在form标签中添加enctype=&quo ... 
- java 上传1(使用java组件fileupload)
		使用fileupload要添加以下包 
随机推荐
- [Paxos] Paxos Made Simple 读后感
			Paxos 由著名图灵奖获得者Leslie Lamport提出,该算法是分布式一致性算法中的奠基之作,今天初读此文仅将相关学习心得予以记录. 1.Paxos 是什么?主要用来解决什么问题? Paxos ... 
- 浅析Thread类run()和start()的区别
			1.先看看jdk文档 void run() If this thread was constructed using a separate Runnable run object, then that ... 
- sublime text 3 打造舒适黑色主题
			效果: 这里我使用了两个主题插件组合成的 Spacegray Afterglow Ctrl+Shift+P -> Package Control:Install Packages 分别输入Spa ... 
- 初识bd时的一些技能小贴士
			既然小豆腐如此给力,而且充分的利用主动学习的优势,已经有了迅速脑补,压倒式的优势,不过这只是表面而已,一切才刚刚开始,究竟鹿死谁手,还有待验证. 以上可以看到,小豆腐为什么拼命的要teach我们了么, ... 
- JavaScript的XMLHttpRequest对象
			ajax的核心技术是XMLHttpRequest对象,简称XHR. //支持IE7及更高的版本 function createXML() { if(typeof XMLHttpReqquest!=&q ... 
- 启动LUXContentTests过程中遇到的问题
			首先,要想在localbox中使用Selenium,就得准备好浏览器的driver文件.比如chrome对应的chromedriver文件,该文件是一个exe可执行文件. 问题:当我尝试去跑LUXCo ... 
- Java设计模式:代理模式(一)
			问题的提出 现在生活中,常常在微信朋友圈里面看到代购的信息,你想在国外买什么,香港买什么,但是又懒得自己过去,于是常常委托别人帮忙买奶粉买那啥的.这类问题的缘由是因为客户和原产地没有直接的接触,所以需 ... 
- nginx负载均衡(一)
			背景: 最近公司分配一个项目,做一个直播APP的后台,像这种随时都有用户在线的情况,后台一定不能down掉,而且只做一台服务器的话压力肯定很大,所以考虑用nginx做负载均衡 环境: 三台linux服 ... 
- MVC框架中,遇到 [程序集清单定义与程序集引用不匹配]怎么办?
			项目里有一个WinForm程序,它需要使用一套第三方控件.而我的机器上存有这套控件的两种版本(一个是源码版,一个是演示版).结果经常出现“程序集清单定义与程序集引用不匹配的问题”的异常.最要命的是有时 ... 
- CODEVS上一道很有趣的题(2145 判断奇偶性)
			判断函数y=x^n次方的奇偶性若是奇函数就输出ji,偶函数输出ou 233333 用到了long long 还是爆了,于是就上了char a[1000000] =.= #include<stdi ... 
