请不要妄想,一个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

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

四、uploadsuc.jsp

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

[html] view plaincopy print?
  1. <!-- 注意页首两个包是怎么引用的 -->
  2. <%@ page language="java" import="java.util.*,com.jspsmart.upload.*"
  3. pageEncoding="utf-8"%>
  4. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
  5. <html>
  6. <head>
  7. <title>上传处理页面</title>
  8. </head>
  9. <body>
  10. <%
  11. //之所以要放到异常抛出结构里面,是为了避免直接访问此页报错
  12. try{
  13. //指定动作
  14. SmartUpload smart=new SmartUpload();
  15. smart.initialize(pageContext);
  16. smart.upload();
  17. //把文件保存到同目录的pic文件夹
  18. smart.save("pic");
  19. }
  20. catch(Exception e){
  21. }
  22. %>
  23. <a href="upload.jsp">返回</a>
  24. </body>
  25. </html>

五、运行效果

文章参考:http://blog.csdn.net/yongh701/article/details/41940787

使用jspsmartupload完成简单的文件上传系统相关推荐

  1. 简述php中文件上传过程,简单php文件上传详细说明

    关于文件上传我们讲了很多,这只是一款最基本的简单的文件上传功能,同时本教程也介绍了关于上传的原理以及各种函数的使用与file的参数说明,以及php.ihi设置上传文件大小配置等. 1  如果实现小文件 ...

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

    利用Socketserver实现简单的文件上传 server.py #!/usr/bin/env python #coding:utf-8 import SocketServer import os ...

  3. 项目Tips---使用阿里的OOS实现简单的文件上传

    简介 在还没有工作时,我们做项目时一般使用的Tomcat服务器作为文件上传和下载的存储点.可是作为上线项目这是行不通,所以为了解决海量数据存储与弹性扩容,阿里云给我们提供了一个OOS的对象存储平台. ...

  4. 树莓派3B+采用花生棒进行内网穿透,从拆箱到实现SSH远程控制与sftp简单远程文件上传下载

    树莓派3B+采用花生棒进行内网穿透,使用sftp实现远程控制与简单远程文件上传下载) 准备步骤 物理环境搭建 关于基础配置的博文推荐 树莓派联网配置 基础联网 配置静态ip 花生壳内网穿透 常用远程端 ...

  5. ASP.NET MVC实现简单的文件上传与下载

    使用ASP.NET MVC实现简单的文件上传与下载. 1.上传文件HTML <form action='@Url.Action("Upload", "File&qu ...

  6. [转]仿163网盘无刷新文件上传系统

    原文链接:http://www.cnblogs.com/cloudgamer/archive/2008/10/20/1314766.html 这个仿163网盘无刷新文件上传系统,并没有用使用.net的 ...

  7. NetCore开发的分布式文件上传系统

    日常如果是上传一些小文件,在程序实现中,我们都是直接上传,一般都没什么问题.如果针对大文件上传的业务中,就会面临着: 1.网速问题,导致文件上传超时,而导致失败. 2.效率问题,上传大文件等待时间过长 ...

  8. 仿163网盘无刷新多文件上传系统

    这个仿163网盘无刷新多文件上传系统,并没有用使用.net的控件,完全的手工制作.前台基本上是静态的,跟后台没有关系,所以后台用什么语言做都可以(后面有各个版本的实例下载). 本来觉得这个系统会很复杂 ...

  9. multer 文件上传系统在express中的使用

    multer 文件上传系统在express中的使用 参考: 技术栈 Multer 是一个node.js中间件,用于处理 multipart/form-data类型的表单数据,主要用于上传文件. 在fo ...

最新文章

  1. 华为接入鸿蒙,华为将发布鸿蒙平板,魅族宣布接入鸿蒙系统
  2. 聊聊Cassandra的FailureDetector
  3. Android Studio的技巧
  4. JSF和“立即”属性–命令组件
  5. js的oop方式和this指针问题
  6. nslookup查询结果详解
  7. onloadsuccess: function获取不到表格数据_R语言输格式技巧系列(二),再精细一点,定制包含亚组的表格...
  8. 一个具自我复制功能的程序
  9. FFmpeg系列(二)-Android项目引入FFmpeg库播放视频
  10. 寻找自己的道路——与技术同胞共勉 一种划分为七个阶段的道路:自信=意志=布局=切入点=团队=渠道=产品...
  11. 学习《鸟哥的Linux私房菜》后的感想
  12. 饭后Android 第三餐-XUI框架(XUI介绍,使用方法,控件使用(九个Button,导航栏,可伸缩布局,顶部弹出框))
  13. 键盘按钮KeyCode使用案例
  14. RSA详解 ----- Android中常用的非对称加密算法
  15. 蓝湖 Axure 墨刀
  16. aspectj tomcat load-time waver
  17. Yapi 可视化接口管理平台部署文档
  18. OpenCV - Universal intrinsics 统一指令集
  19. Redis 6.2 启动关闭
  20. yun mysql_yun 安装mysql

热门文章

  1. 云信小课堂丨简单四步,快速搭建协同办公系统!
  2. 等了这么久,就给我看这个?
  3. 日常检查IBM P系列小型机状态的项目及其相关命令
  4. AutoCAD VBA对齐对象
  5. 关于SharePoint部署Webpart的十个必读链接(downmoon)
  6. HBase timestamp(version)
  7. 【收藏】Spark之RDD的mapPartitions算子
  8. spark wordcount完整工程代码(含pom.xml)
  9. Android Studio3.5.2离线安装gradle
  10. 阿里巴巴Java开发规约插件p3c