【Jsp】使用jspsmartupload完成简单的文件上传系统

请不要妄想,一个html的file控件,再加上javascript与jquery语句就可以完成文件上传,

文件上传系统从来是需要配合服务器来完成的

用户把自己的文件上传到服务器上

文件上传系统是很复杂的一件事。

html的file控件向动态网页语言以post方式通过enctype="multipart/form-data"解码成二进制文件就不管了

动态网页需要对其通过asp,jsp,php,asp.net编程,才能正常把文件保存到服务器中

网络上对文件处理的方法是五花八门,让人无从下手,

尤其是jsp方面,用servlet的有之,用ssh的有之,各种各样的包,反而导致其代码的适用性糟糕无比而已

下面提供一种jsp最简单的方法,完成文件上传系统

一、下载jspsmartupload

首先,你要下载一个jspsmartupload.jar,不知道怎么说jsp才好,自诩为插件多,可扩展性强,其实这样反而搞到一个插件一门新的语言~╮(╯▽╰)╭

jspsmartupload算是最简单的文件上传插件了,代码量极少

下载的时候也要注意,网上有一些仅支持英文文件名的jspsmartupload.jar,上传中文文件的时候会乱码

我在网上找了很久,才发现有人提供了一份相当不错的,默认支持中文的jspsmartupload.jar,而且免费下载(点击打开链接

我也上传的一份(点击打开链接

二、配置jspsmartupload

没什么好说的,把下载后的lib包,扔到Eclipse新建的web工程的lib目录

然后新建两个文件,一个upload.jsp用来放html上传用的file控件

一个uploadsuc.jsp用来处理上传的file中

其实最重要的是,在webroot目录下建立一个pic文件夹,用来存放上传文件

这个插件如果没有文件夹不会新建文件夹的,只会报错

三、upload.jsp

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
	<head>
		<title>上传页面</title>
	</head>
	<!-- 没什么好说的,就一个html的file控件,刚学html编程的人都会,注意在表单加上enctype="multipart/form-data",否则会报错 -->
	<body>
		<form action="uploadsuc.jsp" method="post"
			enctype="multipart/form-data">
			<input type="file" name="pic" id="pic" />
			<input type="submit" value="上传" />
		</form>
	</body>
</html>

四、uploadsuc.jsp

注意页首两个包是怎么引用的

<!-- 注意页首两个包是怎么引用的 -->
<%@ page language="java" import="java.util.*,com.jspsmart.upload.*"
	pageEncoding="utf-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
	<head>
		<title>上传处理页面</title>
	</head>

	<body>
		<%
			//之所以要放到异常抛出结构里面,是为了避免直接访问此页报错
			try{
				//指定动作
				SmartUpload smart=new SmartUpload();
				smart.initialize(pageContext);
				smart.upload();
				//把文件保存到同目录的pic文件夹
				smart.save("pic");
			}
			catch(Exception e){
			}
		 %>
		<a href="upload.jsp">返回</a>
	</body>
</html>

五、运行效果

时间: 2024-12-25 13:31:46

【Jsp】使用jspsmartupload完成简单的文件上传系统的相关文章

【Jsp】使用AjaxFileUploader与jspsmartupload完成不刷新的Ajax文件上传系统

这个不刷新的Ajax文件上传系统同样可以用来做预览图 虽然预览图完全可以通过不上传图片就完成,但是不刷新的Ajax文件上传系统可以做到上传完图片立即返回上传结果给用户的结果 上次在<[Jsp]使用jspsmartupload完成简单的文件上传系统>(点击打开链接)一文中完成了一个简单的文件上传系统 但是这个文件上传系统过于传统, 上传完文件之后需要跳转到另外一个页面中提交表单,处理表单,然后再提供一个"返回"按钮给用户 如果用户要求上传之后,马上看到图片,并且不跳转,只好利

【Servlet】利用Servlet3.0标准与JSTL表达式实现文件上传系统,支持图片上传后显示

伴随着JDK1.6一起出现的Servlet3.0标准,使得JSP的文件上传系统不再艰难,此前在JSP的文件上传系统需要<[Jsp]使用jspsmartupload完成简单的文件上传系统>(点击打开链接)类似这样的插件才能完成的文件上传系统,还不支持中文,使得各位程序猿掏空心思才能解决这个问题.现在Servlet3.0对文件上传的方法进行封装,无须分块就可以实现.而且Servlet3.0还不用类似<[Servlet]最简单的Servlet JavaWeb程序>(点击打开链接)在web

使用jsp/servlet简单实现文件上传与下载

使用JSP/Servlet简单实现文件上传与下载 通过学习黑马jsp教学视频,我学会了使用jsp与servlet简单地实现web的文件的上传与下载,首先感谢黑马.好了,下面来简单了解如何通过使用jsp与servlet实现文件上传与下载. 在写代码之前,我们需要导入两个额外的jar包,一个是common-io-2.2.jar,另一个是commons-fileupload-1.3.1.jar,将这个两个jar 包导入WEB-INF/lib目录里. 首先,想要在web端即网页上实现文件上传,必须要提供

jfinal初接触,一个简单的文件上传例子

写了个上传的小例子. 从jfinal官网下载jfinal-1.8_demo_for_jsp.zip 然后下载jfinal-1.8-lib.zip 按要求删掉该删除的,引入一些包,之后的项目结构: DemoConfig.java中配置路由,只留下了根路径: /** * 配置路由 */ public void configRoute(Routes me) { me.add("/", CommonController.class); //me.add("/blog", B

基于JSP+Servlet+JavaBean的图片或文件上传

基于JSP+Servlet+JavaBean的图片或文件上传 一.概述 现在不管是博客论坛还是企业办公,都离不开资源的共享.通过文件上传的方式,与大家同分享,从而达到大众间广泛的沟通和交流,我们既可以从中获得更多的知识和经验,也能通过他人的反馈达到自我改进和提升的目的. 下面我就为大家介绍 web项目中的这一上传功能,那么文件是如何从本地发送到服务器的呢?大家可以在在线视频课程进修学习<基于JSP+Servlet+JavaBean的人力资源管理系统开发>中第22课-项目开发-其它功能完善-图片

简单的php文件上传系统

<?php if (isset ($_GET['type'])&& $_GET['type']=="send"){ if ($_FILES['userfile']['error']==0) { /*echo 'File Name: '.$_FILES['userfile']['name'].'<br>'; echo 'File Type: '.$_FILES['userfile']['type'].'<br>'; echo 'File Si

python写个简单的文件上传是有多难,要么那么复杂,要么各种,,,老子来写个简单的

def upload(url,params): ''' 上传文件到服务器,不适合大文件 @params url 你懂的 @params {"action":"xxx","@file","file_path"} 普通参数 key:value 文件key头部加@ ''' import os import urllib2 BOUNDARY = "0450de9528f040078csuxianbaozic06"

基于Java的一个简单的文件上传下载功能

最近在公司给客户端做接口,有一个图片上传和文件下载的功能,本来想用Struts来做文件上传下载,但是看了下公司好像没有这个配置,然后看了下同事的代码,才发现原来Apache也可以简单的实现文件上传下载. 首先引入commons-io-2.2.jar FileUtils为我们提供了很多对文件的操作的方法,比如上传整个文件夹的文件.上传单个文件等 然后请看代码下载: public static void uploadFile(String targetDirectory,String targetF

利用Socketserver实现简单的文件上传

利用Socketserver实现简单的文件上传 server.py #!/usr/bin/env python #coding:utf-8 import SocketServer import os class MyServer(SocketServer.BaseRequestHandler):     def handle(self):         base_path = 'C:/temp'         conn = self.request                 print