<%@ page import="java.util.*"%>
<%@ page import="java.io.File"%>
<%@ page import="org.apache.commons.fileupload.FileItem"%>
<%@ page import="org.apache.commons.fileupload.FileUploadBase"%>
<%@ page import="org.apache.commons.fileupload.FileUploadException"%>
<%@ page import="org.apache.commons.fileupload.disk.DiskFileItemFactory"%>
<%@ page import="org.apache.commons.fileupload.servlet.ServletFileUpload"%>
<%@ page import="com.khnt.cdsp.xzxk.Import"%>
<%@ page import="com.khnt.pub.MemsUser" %>
<%@ page import="com.khnt.frame.foundation.user.User" %>
<%@ page contentType="text/html;charset=UTF-8"%>
<%
String resultMsg = "";
String filePath = "";
MemsUser user = (MemsUser) session.getAttribute(User.NAME);
String aCode = user.getAreacode();
String paths = request.getParameter("path");
String path = pageContext.getServletContext().getRealPath("/") + "files/" + paths + "/";
try
{
// 1. 上传文件
DiskFileItemFactory factory = new DiskFileItemFactory();
factory.setSizeThreshold(4*1024);
ServletFileUpload upload = new ServletFileUpload(factory);
upload.setSizeMax(1000*1024*1024);
List itemList = null;
try {
itemList = upload.parseRequest(request);
}catch (FileUploadBase.SizeLimitExceededException e){
// 请求数据的size超出了规定的大小.
e.printStackTrace();
response.getWriter().print("{success:false,errors:'请求数据的size超出了规定的大小'}");
return;
}catch (FileUploadBase.InvalidContentTypeException e){
// 无效的请求类型,即请求类型enctype != "multipart/form-data"
response.getWriter().print("{success:false,errors:'请求类型enctype != multipart/form-data'}");
return;
}catch (FileUploadException e){
// 如果都不是以上子异常,则抛出此总的异常,出现此异常原因无法说明.
response.getWriter().print("{success:false,errors:'上传过程异常,导致其原因可能是网速过慢或者其它原因'}");
return;
}
if(itemList != null){
Iterator it = itemList.iterator();
while(it.hasNext())
{
FileItem item =(FileItem) it.next();
if(!item.isFormField())
{
String totalName = item.getName();
String name = "temp";
if(totalName != ""){
int index = totalName.lastIndexOf("\\");
name = totalName.substring(index+1);
//System.out.println(name);
}else{
name = "temp";
}
try {
filePath = path + name;
//System.out.println("-------------------" + path +name);
item.write(new File(filePath));
} catch (Exception e) {
e.printStackTrace();
response.getWriter().print("{success:false,errors:'写入磁盘错误'}");
return;
}
}
}
}
else{
response.getWriter().print("{success:false,errors:'上传数据空'}");
return;
}
// 2. 导入数据(操作数据库)
resultMsg = Import.impExcel(filePath,aCode,user.getUserId());
// 3. 返回结果
out.print(resultMsg);
//response.getWriter().print("{success:true,msg:'导入成功!'}");
}
catch (Exception e)
{
e.printStackTrace();
out.print(resultMsg);
//response.getWriter().print("{success:false,errors:'导入失败,请检查文件格式是否正确'}");
}
%>
- 浏览: 599764 次
- 性别:
- 来自: 成都
文章分类
- 全部博客 (263)
- Struts2 (3)
- Spring (15)
- Apache (11)
- Java (57)
- Hibernate (10)
- Oracle (19)
- Linux (27)
- MYSQL (2)
- JavaScript (15)
- WebService (4)
- XFire (4)
- FreeMarker (2)
- JXL (2)
- Eclipse (5)
- PowerDesigner (6)
- Intellij IDEA (7)
- JQuery (6)
- EL&JSTL (3)
- SpringMVC (7)
- JAR&TLD (1)
- CMD&BAT (1)
- CSS (2)
- axis (2)
- dom4j (1)
- SoapUI (1)
- HttpClient (2)
- FusionCharts (4)
- 百度地图Api进阶教程 (5)
- SQLSERVER (15)
- 网站安全 (1)
- CXF (3)
- 文件同步软件 (0)
- Maven (9)
- Solr (2)
- QRCode (1)
- JSON (1)
- Dubbo (6)
- log4j2 (1)
- MyBatis (4)
- JavaWeb (1)
- activiti (2)
- kettle (1)
- JVM调优 (9)
最新评论
-
_739677725:
4楼的兄弟 你有源码没有?如果有可不可以帮忙转发一份 邮箱: ...
JAVA线程根据给定URL生成网页快照 -
_739677725:
下载不了了
JAVA线程根据给定URL生成网页快照 -
rhyhhg5:
还有一些url,抓图片的时候会提示脚本错误什么的,什么情况?
JAVA线程根据给定URL生成网页快照 -
rhyhhg5:
为什么 给 有些url,就抓不了图片呢
JAVA线程根据给定URL生成网页快照 -
feng_tai_jun:
总结很好。
Java中获取类加载路径和项目根路径
发表评论
-
自定义JSP中的Taglib标签之四自定义标签中的Function函数
2017-10-13 22:53 278之前例子已经写好了,由于时间关系一直没有发布,这次带来的是关 ... -
POI实现超大数据的Excel的读写操作,支持Excel最大行数
2017-10-12 23:22 486参考:http://thinkgem.iteye.com/b ... -
java+ftp文件上传注意事项
2017-05-06 00:49 666// 设置上传文件的类型为二进制类型 ftp.setFi ... -
Java中使用OpenSSL生成的RSA公私钥进行数据加解密
2017-04-12 16:22 432http://blog.csdn.net/chaijunkun ... -
BigDecimal 使用方法详解
2017-03-20 14:11 521BigDecimal 由任意精度的整数非标度值 和 32 位 ... -
Apache POI Excel的工具类
2017-01-05 22:30 366参看:https://my.oschina.net/simpl ... -
JAVA 生成条码(一维码)及二维码
2016-06-26 00:15 4204package zjpt.zwsm.utils; im ... -
JAVA中常用IO流类:FileReader和FileWriter
2016-03-31 17:26 4311,FileWriter类(字符输 ... -
JAVA缓存的实现
2016-02-26 16:53 365缓存可分为二大类: 一、通过文件缓存,顾名思义文件缓存是指 ... -
Java 正则表达式详解
2015-10-22 10:17 462参考: http://www.jb51.net/arti ... -
Java中遍历文件夹、获取文件内容
2015-06-11 16:17 1287package demo.test; import j ... -
Java批量下载生成zip文件
2015-03-19 10:48 633import java.io.File;import ja ... -
Java读取.properties文件
2014-11-14 15:14 5771.获取src/config目录下的配置文件 ... -
使用JSONObject生成json
2014-03-06 10:59 826所需要的包 commons-httpclient-3.1. ... -
JVM内存状况查看方法和分析工具
2014-02-17 14:16 718JConsole JConsole可以图形化查看JV ... -
Java一次性查询几十万 几百万数据解决办法
2014-01-03 16:54 3676在做大数据量同步的 ... -
Java 单例模式(Singleton)
2013-12-27 21:40 694/** * @author BestUpon ... -
JDBC 批量插入
2013-12-26 21:12 917使用JDBC向数据库插入100000条记录,分别使用sta ... -
Hibernate 批量插入、更新与删除
2013-12-26 20:30 1189批量插入 在项 ... -
Tomcat与Jre绿色环境配置(生产环境)
2013-12-25 16:43 14506Tomcat运行时需要jre的支持 ...
相关推荐
1. 在实现JSP文件上传和下载时,需要注意文件上传的大小限制,避免上传大文件引发的服务器崩溃。 2. 在实现JSP文件上传和下载时,需要注意文件的安全性,避免恶意攻击和数据泄露。 3. 在实现JSP文件上传和下载时,...
在本文中,我们将学习如何使用 JSP 实现文件上传和下载功能。在这个过程中,我们将使用 Apache 的 Commons FileUpload 和 Commons IO 两个库来处理文件上传和下载。 首先,让我们了解一下文件上传和下载的基本概念...
在 do_upload.jsp 文件中,我们使用了 Java 语言来实现文件上传功能。首先,我们使用了 File 类来创建一个文件对象,该文件对象用于存储上传的文件。然后,我们使用了 FileOutputStream 类来将上传的文件写入到...
实现JSP多文件上传,我们需要了解以下几个关键知识点: 1. **HTML表单与多文件选择**: 在HTML中,`<input type="file">`标签用于创建一个文件输入框,用户可以通过它选择文件。要支持多文件上传,需要设置`...
要实现文件上传,首先在JSP页面上创建一个form表单,设置`enctype="multipart/form-data"`属性,然后添加一个input元素用于选择文件。提交表单后,JSP页面对应的Servlet或Controller将接收到文件数据。在服务器端,`...
本教程将详细介绍如何使用JSP来实现文件上传的功能。 一、理解文件上传原理 文件上传是通过HTTP协议的POST请求实现的。客户端(浏览器)使用表单中的文件输入控件选择要上传的文件,然后提交到服务器端。服务器端...
JSP页面上,使用`<form>`标签设置`enctype="multipart/form-data"`,并将提交动作指向处理文件上传的Javabean方法。 2. **文件显示**: 显示文件列表通常涉及到数据库操作,因为文件路径和元数据可以存储在数据库...
JSP实现文件上传和下载需要理解HTTP协议、Servlet原理以及文件操作。通过使用Apache Commons FileUpload库,可以简化文件上传的处理,而文件下载则需要设置正确的响应头和处理文件流。在实际应用中,还需要考虑安全...
本项目专注于解决在JSP中实现文件上传和下载时遇到的一些常见问题,特别是针对中文文件名的处理。下面我们将深入探讨这个主题。 首先,文件上传通常涉及到HTTP协议中的multipart/form-data类型表单。在JSP中,我们...
在JSP文件中仅仅书写三五行JAVA代码就可以搞定文件的上传或下载,方便。 * 能全程控制上传。利用jspSmartUpload组件提供的对象及其操作方法,可以获得全部上传文件的信息(包括文件名,大小,类型,扩展名,文件数据...
总之,基于JSP的文件上传下载是Java Web开发中的基础技能,它结合了HTML、JavaScript、Servlet和JavaBean等技术,通过合理的服务器端处理和客户端交互,实现了用户友好的文件操作功能。理解并掌握这部分知识,对于...
在多文件上传的场景中,JSP主要负责接收和处理来自客户端的文件上传请求。 在"MultifileUploadDemo"中,我们利用了Flash作为前端的上传组件。Flash因其支持多媒体和交互性而被广泛用于创建丰富的互联网应用程序。在...
通过以上步骤,你可以实现一个基本的JSP文件上传功能。然而,实际项目中可能还需要考虑更多因素,如用户体验、文件存储策略、错误报告等。不断学习和实践,你将能构建出更完善、更安全的文件上传系统。
在 JSP 应用中实现文件上传主要涉及以下几个步骤: ##### 1. 创建表单 首先需要在 HTML 表单中定义文件上传字段,通常使用 `<input type="file">` 来实现。 ```html <form action="upload.jsp" method="post" ...
总结,`jspSmartUpload`为Java Web开发者提供了一个强大的工具,使他们能够方便地实现文件上传和下载功能。通过了解`SmartUpload`类的关键方法和使用示例,开发者可以更好地在项目中集成这个组件,提升用户体验,...
在IT行业中,文件上传是常见的用户交互功能,特别是在网页应用中。本教程将详细解析如何使用纯JSP技术实现一个不刷新页面、允许用户连续填写表单数据并最终上传文件的功能。这一特性对于提高用户体验至关重要,因为...
总结来说,实现JSP文件上传功能的关键在于理解HTTP协议中文件上传的数据格式,正确设置HTML表单,以及在服务器端正确地解析和处理上传的数据。通过上述步骤,我们可以实现一个基本的文件上传功能,但实际应用中可能...
在这个特定的项目中,我们关注的是如何使用JSP来实现文件上传的功能,这是一个常见的需求,特别是在用户需要提交表单数据时包含文件,如图片、文档等。 文件上传通常涉及以下步骤: 1. **前端交互**:在用户界面,...