java web 上传文件夹

今天我弄了一下文件夹上传(很简单的)

 

首先,我们的html需要这样写


 

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

    <input type="hidden" name="type" value="1"/>

    <input id="dir" type="file" name="file" webkitdirectory mozdirectory/>

    <input id="uploadDir" type="submit" value="提交文件夹">

</form>

这个一定要加上去   

 

enctype="multipart/form-data" method="post"

还有  

 

 webkitdirectory mozdirectory

这个好像仅支持谷歌浏览器

 

 

 

如果没有在Spring 里配置multipartResolver会报错,配置一下就好了

<bean id="multipartResolver"

      class="org.springframework.web.multipart.commons.CommonsMultipartResolver">

    <!-- 上传文件大小上限,单位为字节(10MB) -->

    <property name="maxUploadSize">

        <value>999999999999999999</value>

    </property>

    <!-- 请求的编码格式,必须和jSP的pageEncoding属性一致,以便正确读取表单的内容,默认为ISO-8859-1 -->

    <property name="defaultEncoding">

        <value>UTF-8</value>

    </property>

</bean>

 

然后就是我们的后台

@RequestMapping("/upload")

public Message upload(@RequestParam("type")int type, @RequestParam("file") MultipartFile[] file){





    for(MultipartFile f:file){



        File file1 ;

        String name="";

        try {

            if (f instanceof CommonsMultipartFile) {

                //转换成这个对象,然后我们需要通过里面的FileItem来获得相对路径

                CommonsMultipartFile f2 = (CommonsMultipartFile) f;

                name = f2.getFileItem().getName();

                System.out.println(name + "        ---------相对路径");



                file1 = new File(getProjectPath() + "/" + name);

                file1.mkdirs();

                file1.createNewFile();

                f.transferTo(file1);

            }

            System.out.println(f.getOriginalFilename() + "   iii         --------");

            System.out.println("sssss   ");

        }catch (Exception e){

            e.printStackTrace();

        }



    }





    return new Message(true,"成功");

}

 

我们需要将MultipartFile转换成这个对象

 

 CommonsMultipartFile f2 = (CommonsMultipartFile) f;

因为我们需要里面的FileItem来获得相对路径

 

获得了相对路径,然后我们就用项目路径和这个相对路径加上去

 

然后创建文件夹,并写入到服务器的绝对路径就行了

效果与功能展示:

树形目录导航。您可以通过树型目录导航和路径导航栏快速跳转到指定目录。在跳转后树型目录将会自动选中当前的目录。

 

路径导航,点击根目录按钮便可返根目录

 

文件和目录重命名

 
 

点击删除按钮

说明: http://qqadapt.qpic.cn/adapt/0/a08d8c16-78a3-7ce5-c2cd-5df1e60fb8cc/800?pt=0&ek=1&kp=1&sce=0-12-12

点击确定后,页面中的文件消失


 

 

 

批量上传文件

 
 

粘贴上传

复制文件夹、文件或图片

说明: http://qqadapt.qpic.cn/adapt/0/ab61b9d4-755b-ee18-376d-f4ac80ad6417/800?pt=0&ek=1&kp=1&sce=0-12-12

在页面中选择好相应的上传目录,点击粘贴上传按钮,数据即可快速开始上传

说明: http://qqadapt.qpic.cn/adapt/0/b9fa01e5-ebec-3887-6726-67dcbc1a77ef/800?pt=0&ek=1&kp=1&sce=0-12-12


 

 

 

批量上传文件和文件夹

 

数据库记录

 

文件和目录下载

 

批量下载

同时选择多个需要下载的文件 

然后点击下载按钮,设置下载目录文件夹

说明: C:\Users\Administrator\Desktop\2222.png


 

 

点击全部下载,开始下载

 

自动加载未上传完的任务。在刷新浏览器或重启电脑后仍然可以自动加载未完成的任务。

 

 

下载完成后打开我们设置的下载目录文件夹,发现需下载的文件或文件夹确认已下载成功,经确认文件夹内的内容与下载文件夹内容一致

说明: http://qqadapt.qpic.cn/adapt/0/3224196a-396c-8ee1-b509-3179302fbd86/800?pt=0&ek=1&kp=1&sce=0-12-12

 

数据库记录

 
 

控件包下载:
cab(x86):http://t.cn/Ai9pmG8S

cab(x64):http://t.cn/Ai9pm04B

xpi:http://t.cn/Ai9pubUc

crx:http://t.cn/Ai9pmrcy

exe:http://t.cn/Ai9puobe

 

示例下载:

asp.net:http://t.cn/Ai9pue4A

jsp-eclipse:http://t.cn/Ai9p3LSx

jsp-myeclipse:http://t.cn/Ai9p3IdC

php: http://t.cn/Ai9p3CKQ

 

在线教程:
asp.net-文件管理器教程:http://j.mp/2MLoQWf

jsp-文件管理器教程:http://j.mp/2WJ2Y1m

php-文件管理器教程:http://j.mp/2MudPs3

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值