仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 651|回复: 13
打印 上一主题 下一主题

[学习教程] JAVA网页编程之jspSmartUpload上传下载全攻略(三)

[复制链接]
飘飘悠悠 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:20:24 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
你通过从书的数量和开发周期及运行速度来证明:net和ruby要比java简单。js|攻略|上传|下载3、文件上传篇
㈠表单请求
关于上传文件的FORM表单,有两个请求:
1、METHOD使用POST,即METHOD="POST"。
2、增添属性:ENCTYPE="multipart/form-data"
上面是一个用于上传文件的FORM表单的例子:
<FORMMETHOD="POST"ENCTYPE="multipart/form-data"
ACTION="/jspSmartUpload/upload.jsp">
<INPUTTYPE="FILE"NAME="MYFILE">
<INPUTTYPE="SUBMIT">
</FORM>
㈡上传的例子
1、上传页面upload.html
本页面供应表单,让用户选择要上传的文件,点击"上传"按钮实行上传操纵。
页面源码以下:
<!--
文件名:upload.html
纵横软件制造中央雨亦奇(zhsoft88@sohu.com)
-->
<!DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.01Transitional//EN">
<html>
<head>
<title>文件上传</title>
<metahttp-equiv="Content-Type"content="text/html;charset=gb2312">
</head>
<body>
<p></p>
<palign="center">上传文件选择</p>
<FORMMETHOD="POST"ACTION="jsp/do_upload.jsp"
ENCTYPE="multipart/form-data">
<inputtype="hidden"name="TEST"value="good">
<tablewidth="75%"border="1"align="center">
<tr>
<td><divalign="center">1、
<inputtype="FILE"name="FILE1"size="30">
</div></td>
</tr>
<tr>
<td><divalign="center">2、
<inputtype="FILE"name="FILE2"size="30">
</div></td>
</tr>
<tr>
<td><divalign="center">3、
<inputtype="FILE"name="FILE3"size="30">
</div></td>
</tr>
<tr>
<td><divalign="center">4、
<inputtype="FILE"name="FILE4"size="30">
</div></td>
</tr>
<tr>
<td><divalign="center">
<inputtype="submit"name="Submit"value="上传它!">
</div></td>
</tr>
</table>
</FORM>
</body>
</html>
2、上传处置页面do_upload.jsp
本页面实行文件上传操纵。页面源码中具体先容了上传办法的用法,在此不赘述了。
页面源码以下:
<%--
文件名:do_upload.jsp
纵横软件制造中央雨亦奇(zhsoft88@sohu.com)
--%>
<%@pagecontentType="text/html;charset=gb2312"language="java"
import="java.util.*,com.jspsmart.upload.*"errorPage=""%>
<html>
<head>
<title>文件上传处置页面</title>
<metahttp-equiv="Content-Type"content="text/html;charset=gb2312">
</head>
<body>
<%
//新建一个SmartUpload对象
SmartUploadsu=newSmartUpload();
//上传初始化
su.initialize(pageContext);
//设定上传限定
//1.限定每一个上传文件的最年夜长度。
//su.setMaxFileSize(10000);
//2.限定总上传数据的长度。
//su.setTotalMaxFileSize(20000);
//3.设定同意上传的文件(经由过程扩大名限定),仅同意doc,txt文件。
//su.setAllowedFilesList("doc,txt");
//4.设定克制上传的文件(经由过程扩大名限定),克制上传带有exe,bat,
jsp,htm,html扩大名的文件和没有扩大名的文件。
//su.setDeniedFilesList("exe,bat,jsp,htm,html,,");
//上传文件
su.upload();
//将上传文件全体保留到指定目次
intcount=su.save("/upload");
out.println(count+"个文件上传乐成!<br>");
//使用Request对象猎取参数之值
out.println("TEST="+su.getRequest().getParameter("TEST")
+"<BR><BR>");
//一一提取上传文件信息,同时可保留文件。
for(inti=0;i<su.getFiles().getCount();i++)
{
com.jspsmart.upload.Filefile=su.getFiles().getFile(i);
//若文件不存在则持续
if(file.isMissing())continue;
//显现以后文件信息
out.println("<TABLEBORDER=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/"+myFile.getFileName());
//另存到以WEB使用程序的根目次为文件根目次的目次下
//file.saveAs("/upload/"+myFile.getFileName(),
su.SAVE_VIRTUAL);
//另存到操纵体系的根目次为文件根目次的目次下
//file.saveAs("c:        emp"+myFile.getFileName(),
su.SAVE_PHYSICAL);
}
%>
</body>
</html>


专门做了这个例子;而java的这个例子好像就是为了教学而写的,很多教学目的的例子是不考虑优化、性能的。
分手快乐 该用户已被删除
沙发
发表于 2015-1-19 18:59:54 | 只看该作者
是一种语言,用以产生「小应用程序(Applet(s))
活着的死人 该用户已被删除
板凳
发表于 2015-1-24 15:23:32 | 只看该作者
一直感觉JAVA很大,很杂,找不到学习方向,前两天在网上找到了这篇文章,感觉不错,给没有方向的我指了一个方向,先不管对不对,做下来再说。
只想知道 该用户已被删除
地板
发表于 2015-2-1 10:13:42 | 只看该作者
Java 不同于一般的编译执行计算机语言和解释执行计算机语言。它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码。从而实现了“一次编译、到处执行”的跨平台特性。
不帅 该用户已被删除
5#
发表于 2015-2-3 17:50:37 | 只看该作者
关于设计模式的资料,还是向大家推荐banq的网站 [url]http://www.jdon.com/[/url],他把GOF的23种模式以通俗易懂的方式诠释出来,纯Java描述,真是经典中的经典。
再见西城 该用户已被删除
6#
发表于 2015-2-5 12:32:34 | 只看该作者
一般学编程语言都是从C语开始学的,我也不例外,但还是可能不学过程语言而直接学面向对象语言的,你是刚接触语言,还是从C开始学比较好,基础会很深点,如果你直接学习JAVA也能上手,一般大家在学语言的时候都记一些语言的关键词,常有的包和接口等。再去做逻辑代码的编写,以后的学习过程都是从逻辑代码编写中提升的,所以这方面都是经验积累的。你要开始学习就从
再现理想 该用户已被删除
7#
发表于 2015-2-6 07:39:04 | 只看该作者
[url]http://www.jdon.com/[/url]去下载,或到同济技术论坛的服务器[url]ftp://nro.shtdu.edu.cn[/url]去下,安装上有什么问题,可以到论坛上去提问。
老尸 该用户已被删除
8#
发表于 2015-2-11 04:11:07 | 只看该作者
科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。
蒙在股里 该用户已被删除
9#
发表于 2015-3-1 20:55:39 | 只看该作者
设计模式是高级程序员真正掌握面向对象核心思想的必修课。设计模式并不是一种具体"技术",它讲述的是思想,它不仅仅展示了接口或抽象类在实际案例中的灵活应用和智慧
小女巫 该用户已被删除
10#
发表于 2015-3-6 20:20:00 | 只看该作者
吧,现在很流行的Structs就是它的一种实现方式,不过Structs用起来实在是很繁,我们只要学习其精髓即可,我们完全可以设计自己的MVC结构。然后你再研究一下软件Refactoring (重构)和极限XP编程,相信你又会上一个台阶。 做完这些,你不如整理一下你的Java代码,把那些经典的程序和常见的应用整理出来,再精心打造一番,提高其重用性和可扩展性。你再找几个志同道合的朋友成立一个工作室吧
深爱那片海 该用户已被删除
11#
发表于 2015-3-7 03:41:57 | 只看该作者
一直感觉JAVA很大,很杂,找不到学习方向,前两天在网上找到了这篇文章,感觉不错,给没有方向的我指了一个方向,先不管对不对,做下来再说。
第二个灵魂 该用户已被删除
12#
发表于 2015-3-8 17:14:50 | 只看该作者
Java 不同于一般的编译执行计算机语言和解释执行计算机语言。它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码。从而实现了“一次编译、到处执行”的跨平台特性。
13#
发表于 2015-3-16 07:26:28 | 只看该作者
设计模式是高级程序员真正掌握面向对象核心思想的必修课。设计模式并不是一种具体"技术",它讲述的是思想,它不仅仅展示了接口或抽象类在实际案例中的灵活应用和智慧
莫相离 该用户已被删除
14#
发表于 2015-3-22 21:08:19 | 只看该作者
自从Sun推出Java以来,就力图使之无所不包,所以Java发展到现在,按应用来分主要分为三大块:J2SE,J2ME和J2EE,这也就是Sun ONE(Open Net Environment)体系。J2SE就是Java2的标准版,主要用于桌面应用软件的编程;J2ME主要应用于嵌入是系统开发,如手机和PDA的编程;J2EE是Java2的企业版,主要用于分布式的网络程序的开发,如电子商务网站和ERP系统。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-24 07:41

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表