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要添加以下包
随机推荐
- JAVA加密算法系列-DESCoder
package ***; import java.security.Key; import java.security.SecureRandom; import javax.crypto.Cipher ...
- 【Android】基于TCP协议的网络通信
1.使用ServerSocket 创建TCP服务器端: ServerSocket server; try { server = new ServerSocket(8000); while (true) ...
- $_GET
POST GET ,是提交表单的两种方式,GET传值就用$_GET获取,POST提交表单就用$_POSTpost与get的区别是一个在地址栏显示参数,另一个不显示 如果地址是这样:http://zhi ...
- javascript中的几种遍历方法浅析
1. for...in 用于对数组或者对象的属性的可枚举属性进行循环操作.注意该对象来自原型链上的可枚举属性也会被循环.下面看例子 var arr = ["lee","h ...
- css高级选择器
并集选择器 p,h1{} 交集选择器 p.first{} 后代选择器:嵌套标签 h1 span{} 子元素选择器 h1>span{} 属性选择器 input[type="passwor ...
- 如何在 FineUIMvc 中引用第三方 JavaScript 库
声明:FineUIMvc(基础版)是免费软件,本系列文章适用于基础版. 引入第三方颜色选择器 在 FineUIMvc 中使用第三方 JavaScript 遵循一定的约定,也非常简单. 下面以官网示例为 ...
- javascript中json对象json数组json字符串互转及取值
今天用到了json数组和json对象和json类型字符串之间互转及取值,记录一下: 1.json类型的字符串转换为json对象及取值 var jsonString = '{"bar" ...
- angular中路由的实现(针对新手)
最近搜了一下网上的教程,看完总感觉有点糊涂,对于新手来说可能云里雾里,所以写一个最简单的路由来给大家做个指引. 首先当然需要准备angular,下载地址:https://angular.io/ 现在a ...
- js函数中this的指向
本文是我个人对this指向的一些理解,如有不足之处,还望大家可以批评指正,在此先谢过了! 首先,我们来回顾一下ES5里函数的几种调用方式: 1⃣️直接调用 foo(); 2⃣️方法调用 obj.foo ...
- Spring事务隔离级别与传播机制详解,spring+mybatis+atomikos实现分布式事务管理
原创说明:本文为本人原创作品,绝非他处转载,转账请注明出处 1.事务的定义:事务是指多个操作单元组成的合集,多个单元操作是整体不可分割的,要么都操作不成功,要么都成功.其必须遵循四个原则(ACID). ...