当前位置:阳光沙滩 >前端 > 查看文章
阿里云优惠码

1.文件上传

 

文件上传和下载,都是我们上网经常遇到的事情,那么这里呢,分开来说说吧。先说的是文件的上传。

那么文件的上传要用到那些知识呢?

首先当然是界面啦。美丽的界面,我们可能没能做到,交给美工同学吧。当然,最基本的input标签我们还是可以写的嘛。

搞定界面当然是到为界面服务的服务端的Servlet啦。这个就关于java的知识了。

1.1.文件上传界面的实现

这里的话,我们只需要表单即可,类型有text类型 ,file类型,submit类型。代码看下面吧,这也太简单了!

<body>
	<form action="">
		<table>
			<tr>
				<td>用户名:</td>
				<td><input type="text" name="username"></td>
			</tr>
			<tr>
				<td>选择文件:</td>
				<td><input type="file" name="file"></td>
			</tr>
			<tr>
				<td colspan="2"><input type="submit" value="上传"></td>
			</tr>
		</table>
	</form>
</body>

html

界面完成了,但是我们还需要一些特定的设置,比如说:

这个上传的方式需要被设置为这个post

enctype属性需要设置为:multipart/from-data,其实这个属性是让浏览器以MIME协议来描述文件,这样的话方便服务器解析和处理文件。

被上传的东西必须有name,这样才能获取到嘛。OK,就这些吧,代码一改,大概这个样子哦!

<form action="" enctype="multipart/form-data" method = "post">

 

好啦,搞定了这些之后,就可以编写Servlet啦!

1.2.上传服务程序的编写

我们要解决的问题是如何在Servlet中读取到上传的数据,并保存到硬盘中去呢?

我们知道在这个request对象里有这个getInputStream这个方法,可以获得输入流,这样的话就可以读取到文件。但是当多人上传时又怎么处理呢,是吧。这关乎到多线程的处理。告诉大家一个经验,对于一些复杂的操作,一般都可以找到工具来操作的。这个上传文件操作也是,通过也有工具jar包。

由Apache提供了一个用来处理表单文件上传的一个开源组件( Commons-fileupload )。该组件性能优异,并且其API使用极其简单,可以让开发人员轻松实现web文件上传功能,因此在web开发中实现文件上传功能,通常使用Commons-fileupload组件实现。

其实只需要一个嘛,因为 Commons-fileupload的工作时需要commons-io包的支持,所以,哈哈!两个!

下载地址:http://pan.baidu.com/s/1kTCMcuj

有了两个包以后呢,我们当然要导入进来啦!

以前单写程序的时候,我们手动地创建一个lib文件夹,然后把这个jar包存放到里头。然后还要build path。才能读取到这个jar包文件。

那么现在呢是这个java Web工程,只有把这些文件复制到WebRoot下的WEB-INF下的lib文件夹即可,就可以自动把jar包添加到classpath中去了!爽吧!

准备好这些,完事了吧,代码实现,嘻嘻!

本文链接:http://blog.sunofbeaches.com/archives/162 转载请注明出处.
如果喜欢:点此订阅本站
7K
相关文章
为您推荐
各种观点

报歉!评论已关闭.