SmartUpload的使用(有个小问题,大神请进~)

1.Smart.jsp(前台)

<%@ page import="java.util.*" contentType="text/html;charset=gbk" %>
<html>
	<head>
	<title>文件上传</title>
	</head>
	<body>
		<p align="center">
		选择上传文件
		</p>
		<form style="font-size:20px" method="post" action="Smartdownload.jsp" enctype="multipart/form-data">
			<table width="75%" horder="1" align="center" bgcolor="#fdf5e6" bordercolor="#f34d34">
				<tr>
					<td>
						<div align="center">
							<font style="font-size:15px;color:#ff8000">上传文件1:</font>
							<input type="file" name="file_1" size="40">
						</div>
					</td>
				</tr>
				<tr>
					<td>
						<div align="center">
							<font style="font-size:15px;color:#ff8000">上传文件2:</font>
							<input type="file" name="file_2" size="40">
						</div>
					</td>
				</tr>
				<tr>
					<td>
						<div align="center">
							<font style="font-size:15px;color:#ff8000">上传文件3:</font>
							<input type="file" name="file_3" size="40">
						</div>
					</td>
				</tr>
				<tr>
					<td>
						<div align="center">
							<font style="font-size:15px;color:#ff8000">上传文件4:</font>
							<input type="file" name="file_4" size="40">
						</div>
					</td>
				</tr>
				<tr>
					<td>
						<div align="center">
							<font style="font-size:15px;color:#ff8000">上传文件5:</font>
							<input type="file" name="file_5" size="40">
						</div>
					</td>
				</tr>
				<tr>
					<td>
						<div align="center">
							<font style="font-size:15px;color:#ff8000">上传账户:</font>
							<input type="text" name="username" size="40">
							<input type="submit" name="submit" value="上传">
						</div>
					</td>
				</tr>
				
			</table>
		</form>
	</body>
</html>
2.Smartdownload.jsp(后台处理)

<%@page import="com.jspsmart.upload.File"%>
<%@page language="java" import="java.util.*,com.jspsmart.upload.SmartUpload" pageEncoding="gbk"%>


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
  
    <title>文件上传</title>
  </head>
  
  <body>
    <%
    /*新建一个SmartUpload对象*/
    SmartUpload la=new SmartUpload();
    /*上传初始化*/
    la.initialize(pageContext);//pageContext是jsp的内置对象,表示当前整个页面
    /*上传文件*/
System.out.println("我能运行到这");
   	la.upload();//<span style="color:#ff0000;">我老是报空指针异常~~</span>
    /*设置上传限制(项目工程的bug控制在千分之五)*/
    la.setMaxFileSize(10*1024*1024);//限制每个上传文件的最大长度10M
    la.setTotalMaxFileSize(60*1024*1024);//限制总上传数据长度60M
    la.setAllowedFilesList("jpg,png");//设置允许上传文件(通过文件的扩展名)
    la.setDeniedFilesList("exe,bat,jsp,html,htm");//设置禁止上传文件(通过文件扩展名)
    
    /*将文件全部保存到指定虚拟目录,相当于web的根目录*/
    int count=la.save("/uploaderFile");//上传的个数
    out.println("<font style='font-size:25px;color:#ff4500'<b>"+count+"个文件上传成功</b></font><br/>");
    /*利用request对象获取参数值*/
    out.println("<br><font style='font-size:25px;color:#ff4500><b>上传用户:'"+la.getRequest().getParameter("username")+"</b></font>");
    /*逐一提取上传文件信息,同时保存文件*/
    for(int i=0;i<la.getFiles().getCount();i++){
    	File file=la.getFiles().getFile(i);//此处的file是com.jspsmart.upload包内的File.class
    	if(file.isMissing()){//为了应对上传的多个文件中出现空的情况
    		continue;//跳出当前循环一次
    	}
    	/*显示当前文件信息*/
    	out.println("<table border=1 width=40% bgcolor=#fdf5e6 bordercolor=#688e23>");
    	out.println("<tr><th><font style='font-size:15px;color:#fa8072'>表单项名</font><td>"+file.getFieldName()+"</td>");//get方法获取文件名称
    	//如果是图片就让图片预览,否则显示信息(方法总结:getFieldName();getFileExt();getFilePathName();)
    	if("jpg".equals(file.getFileExt())||"png".equals(file.getFileExt())){//get方法获取文件后缀
    		out.println("<td colspan='5'><img src='uploaderFile/"+file.getFilePathName()+"'width='100' height='90'/></td>");//get方法获取文件路径
    	}
    	out.println("</tr>");
    	out.println("<tr><th><font style='font-size:15px;color:#fa8072'>文件长度</font></th><td>"+file.getSize()+"Byte</td></tr>");
    	out.println("<tr><th><font style='font-size:15px;color:#fa8072'>文件名</font></th><td>"+file.getFieldName()+"</td></tr>");
    	out.println("<tr><th><font style='font-size:15px;color:#fa8072'>文件扩展名</font></th><td>"+file.getFileExt()+"</td></tr>");
    	out.println("<tr><th><font style='font-size:15px;color:#fa8072'>文件来源</font></th><td>"+file.getFilePathName()+"</td></tr>");
    	out.println("</table><br>");
    	//另存到内存中(虚拟路径:一旦服务器停止运行,内存就清空了)
    	file.saveAs("/uploaderFile/"+file.getFileName(),SmartUpload.SAVE_VIRTUAL);
    	//另存到物理磁盘上
    	file.saveAs("D:/uploadDemo"+file.getFieldName(),SmartUpload.SAVE_PHYSICAL);
    }
     %>
     
  </body>
</html>


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值