使用JspSmart文件上传
index.html
[html] view plaincopy
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
<title>文件上传</title>
</head>
<body>
<p> </p>
<p align="center">文件上传选择</p>
<form method="post" action="do_upload.jsp"
enctype="multipart/form-data">
<table width="75%" border="1" align="center">
<tr>
<td><div align="center">
1、<input type="file" name="file1" size="30" />
</div>
</td>
</tr>
<tr>
<td><div align="center">
2、<input type="file" name="file2" size="30" />
</div>
</td>
</tr>
<tr>
<td><div align="center">
3、<input type="file" name="file3" size="30" />
</div>
</td>
</tr>
<tr>
<td><div align="center">
4、<input type="file" name="file4" size="30" />
</div>
</td>
</tr>
<tr>
<td>
<div align="center">
上传账户: <input name="uploadername" type="text" /><input
type="submit" name="Submit" value="上传" />
</div></td>
</tr>
</table>
</form>
</body>
</html>
do_upload.jsp
[java] view plaincopy
<%@ page language="java" contentType="text/html; charset=UTF-8"%>
<%@ page import="com.jspsmart.upload.*"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
<title>文件上传处理页面</title>
</head>
<body>
<%
// 新建一个SmartUpload对象
SmartUpload su = new SmartUpload();
// 上传初始化
su.initialize(pageContext);
//设置上传限制
//1.限制每个上传文件的最大长度为10MB
su.setMaxFileSize(10 * 1024 * 1024);
//2.限制总上传文件的长度
su.setTotalMaxFileSize(30 * 1024 * 1024);
//3.设定允许上传的文件
su.setAllowedFilesList("txt,jpg");
//4.设定禁止上传的文件
su.setDeniedFilesList("exe,bat,jsp,htm,html,,");
//上传文件
su.upload();
//将上传的文件全部保存到指定目录
int count = su.save("/upload");
out.println(count + "个文件上传成功!<br/>");
//利用Request对象获取参数之值
out.println("<br/>上传帐户:" + su.getRequest().getParameter("uploadername") + "<br/><br/>");
//逐一提取上传文件信息,同时可保存文件
for(int i=0;i<su.getFiles().getCount();i++){
File file = su.getFiles().getFile(i);
//若文件不存在则继续
if(file.isMissing()){
continue;
}
//显示当前文件信息
out.println("<TABLE BORDER=1>");
out.println("<TR><TD>表单项名(FieldName)</TD><TD>"+file.getFieldName()+"</TD></TR>");
out.println("<TR><TD>文件长度(Size)</TD><TD>"+file.getSize()+"</TD></TR>");
out.println("<TR><TD>文件名(FileName)</TD><TD>"+file.getFileName()+"</TD></TR>");
out.println("<TR><TD>文件扩展名(FileExt)</TD><TD>"+file.getFileExt()+"</TD></TR>");
out.println("<TR><TD>文件全名(FilePathName)</TD><TD>"+file.getFilePathName()+"</TD></TR>");
out.println("</TABLE><BR/>");
//将文件另存为
file.saveAs("/upload/saveas/"+file.getFileName(),SmartUpload.SAVE_VIRTUAL);
file.saveAs("c:/temp/upload//"+file.getFileName(),SmartUpload.SAVE_PHYSICAL);
}
%>
</body>
</html>
使用JspSmart文件上传的更多相关文章
- JspSmart文件上传与下载
JspSmart 文件上传包,放在WEB-INF/lib下 uploadForm.jsp <%@ page language="java" import="java ...
- java web(四)文件上传与下载
一.文件上传原理 1.在TCP/IP中,最早出现的文件上传机制是FTP ,它是将文件由客户端发送到服务器的标准机制:但是在jsp使用过程中不能使用FTP方法上传文件,这是由jsp运行机制所决定. 通 ...
- MyEclipse------如何添加jspsmartupload.jar+文件上传到服务器
下载地址:http://download.csdn.net/detail/heidan2006/182263 如何添加jspsmartupload.jar:右键“Web”工程->properti ...
- ajax方式提交带文件上传的表单,上传后不跳转
ajax方式提交带文件上传的表单 一般的表单都是通过ajax方式提交,所以碰到带文件上传的表单就比较麻烦.基本原理就是在页面增加一个隐藏iframe,然后通过ajax提交除文件之外的表单数据,在表单数 ...
- 文件上传--基于Spring MVC框架+SmartUpload
这篇文章是介绍文件上传的,由于在spring MVC上实现起来和直接在servlet中写有些不同,所以特地写了一下这篇文章,关于不同点,大家可以先阅读一下上一篇文章.好了,下面直接上代码. jab包是 ...
- 整合MVC实现文件上传
1.整合MVC实现文件上传整合MVC实现文件上传在实际的开发中在实现文件上传的同时肯定还有其他信息需要保存到数据库,文件上传完毕之后需要将提交的基本信息插入数据库,那么我们来实现这个操作.整个MVC实 ...
- jsp实现文件上传下载
文件上传: upload.jsp <form action="uploadServlet" method="post" enctype="mul ...
- 混合表单文件上传到数据库(基于TOMCAT)
在实际的开发中在实现文件上传的同时肯定还有其他信息需要保存到数据库,就像混合表单在上传完毕之后需要将提交的基本信息插入数据库. 在这个demo中需要用到这个架包来帮助实现 1.定义一个公共类实现文件上 ...
- java实现文件上传下载
喜欢的朋友可以关注下,粉丝也缺. 今天发现已经有很久没有给大家分享一篇技术文章了,于是想了一下给大家分享一篇java实现文件上传下载功能的文章,不喜欢的希望大家勿喷. 想必大家都知道文件的上传前端页面 ...
随机推荐
- C# int32与int64的区别 附加:字符字节关系
int32 =int int64 =long 1byte=8bit unicode 占2btye int32 占 1 btye long 占 4 btye
- Caffe python利用classify.py实现对单通道(灰度图)的数据进行分类
比如你在mnist的prototxt中定义图输入是单通道的,也就是channel=1,然后如果直接调用classify.py脚本来测试的话,是会报错,错误跟一下类似. Source param sha ...
- 内核hlist的使用
struct hlist_head { struct hlist_node *first; }; struct hlist_node { struct hlist_node *next, **ppre ...
- 通过wifi连接android设备的方法
[转自]http://blog.csdn.net/kuanxu/article/details/7444874 最近由于要在另外一台android设备上调试代码,在本机PC上查看其log.两台机器离的 ...
- spring与quartz整合
这周学习了quartz定时任务,现在进行总结一下.首先要认识定时任务中几个关键接口,以及各个接口之间是如何联系起来的. 1.关键接口 (1)Scheduler,任务调度的API,它可以用来启动或者终 ...
- JSON和GSON的使用
JSONObject 处理问题 相关博客参考:https://www.cnblogs.com/free-dom/p/5801866.html json-lib 和google gson 的使用 Tor ...
- scala学习手记33 - 使用trait进行装饰
在上一节看到了scala的在实例一级的选择性混入就不得不感叹scala在语法上的扩展性.就通过这样一个特性scala简化了很多在java中的编程概念和设计模式. 比如说在java中常用的组合,以及装饰 ...
- SpringBoot实现文件上传功能
新建maven项目,pom文件: <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="htt ...
- BZOJ 3196 Tyvj 1730 二逼平衡树:线段树套splay
传送门 题意 给你一个长度为 $ n $ 有序数列 $ a $ ,进行 $ m $ 次操作,操作有如下几种: 查询 $ k $ 在区间 $ [l,r] $ 内的排名 查询区间 $ [l,r] $ 内排 ...
- 一台电脑上同时使用两个github账户
需求:公司有github账号,自己有github账号,想在Git上同时使用,两者互不干扰. 思路:管理两个SHH key. 解决办法: 一.生成两个SSH key 为了举例方便,这里使用“one”和“ ...