package com.bdqn.zhp.util;

import java.text.SimpleDateFormat;

import java.util.Date;

import javax.servlet.ServletConfig;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import com.jspsmart.upload.File;

import com.jspsmart.upload.Request;

import com.jspsmart.upload.SmartUpload;

public class MyUpload {

    

    private Request request;

    private String fileName;

    private String[] fileNames;

    private SimpleDateFormat format = new SimpleDateFormat("yyyyMMddHHmmssSSS");

    private static int count;

    

    public int getCount(){

        count++;

        if(count>=1000){

            count=0;

        }

        return count;

    }

    

    

    public void upload(ServletConfig config,HttpServletRequest request,HttpServletResponse response){

                try {

                    //文件上传

                    SmartUpload su = new SmartUpload();

                    

//                    su.setMaxFileSize(1000);

                    

                    

                    su.initialize(config, request, response);

                    su.setMaxFileSize(1024);

                    su.setAllowedFilesList("PNG,png");//只允许上传的文件类型

                    su.upload();

                                

                    this.request = su.getRequest();

                    

                    File file =  su.getFiles().getFile(0);

                    

                    //获取客户端选择文件名称

//                    fileName = file.getFileName();

                    

                    //文件重命名

                    String ext = file.getFileExt();///获取文件原有扩展名

//                    saveFileName = System.currentTimeMillis()+"."+ext;

                    fileName = format.format(new Date())+getCount()+"."+ext;

                    

                    //文件另存为 到upload文件夹中

                    file.saveAs("upload/"+fileName);

                    

                    

                } catch (Exception e) {

                    // TODO Auto-generated catch block

                    e.printStackTrace();

                }

    }

    

    /**

     * 多文件上传

     * @param config

     * @param request

     * @param response

     */

    public void uploads(ServletConfig config,HttpServletRequest request,HttpServletResponse response){

        try {

            //文件上传

            SmartUpload su = new SmartUpload();

            su.initialize(config, request, response);

            su.upload();

            

            

            this.request = su.getRequest();

            

            //获取文件个数

            int count = su.getFiles().getCount();

            

            fileNames = new String[count];

            

            for(int i=0;i<count;i++){

                File file =  su.getFiles().getFile(i);

                //文件重命名

                String ext = file.getFileExt();///获取文件原有扩展名

                fileNames[i] = format.format(new Date())+getCount()+"."+ext;

                

                //文件另存为 到upload文件夹中

                file.saveAs("upload/"+fileNames[i]);

            }

            

            

            

            

            

        } catch (Exception e) {

            // TODO Auto-generated catch block

            e.printStackTrace();

        }

}

    

    public Request getRequest(){

        return request;

    }

    public String getFileName(){

        return fileName;

    }

    public String[] getFileNames() {

        return fileNames;

    }

    public void setFileNames(String[] fileNames) {

        this.fileNames = fileNames;

    }

    

}

文件上传smart的更多相关文章

  1. java web(四)文件上传与下载

     一.文件上传原理 1.在TCP/IP中,最早出现的文件上传机制是FTP ,它是将文件由客户端发送到服务器的标准机制:但是在jsp使用过程中不能使用FTP方法上传文件,这是由jsp运行机制所决定. 通 ...

  2. SpringMVC 之文件上传 MultipartResolver

    基于前面文章的基础上. 一.准备 需要的jar  二.配置 1.  spmvc-servlet.xml <?xml version="1.0" encoding=" ...

  3. MultipartResolver 文件上传

    SpringMVC 中文件上传 MultipartResolver 博客分类: SpringMVC - 基础篇   基于前面文章的基础上. 一.准备 需要的jar  二.配置 1.  spmvc-se ...

  4. JSP文件上传--Smartupload组件

    把smartupload.jar copy到D:\apache-tomcat-7.0.57\lib下. 创建htm上传文件:smartupload_demo01.htm 由于是上传文件,需要对表单进行 ...

  5. 整合MVC实现文件上传

    1.整合MVC实现文件上传整合MVC实现文件上传在实际的开发中在实现文件上传的同时肯定还有其他信息需要保存到数据库,文件上传完毕之后需要将提交的基本信息插入数据库,那么我们来实现这个操作.整个MVC实 ...

  6. Java基础——Servlet(八)文件上传下载

    一.简单的文件上传常见的组件Smartupload , Apache 的 commons FileUploadSmartupload上传的步骤: 1.初始化上传上下文 2.准备上传 3.保存文件 &l ...

  7. SmartUpload文件上传组件的使用教程

    在项目中使用SmartUpload组件可以进行文件的上传和下载操作 使用步骤 1.导入jar包,进行build path操作 2.编写文件上传页面,代码如下 <form action=" ...

  8. 混合表单文件上传到数据库(基于TOMCAT)

    在实际的开发中在实现文件上传的同时肯定还有其他信息需要保存到数据库,就像混合表单在上传完毕之后需要将提交的基本信息插入数据库. 在这个demo中需要用到这个架包来帮助实现 1.定义一个公共类实现文件上 ...

  9. java基础篇---文件上传(smartupload组件)

    文件上传几乎是所有网站都具有的功能,用户可以将文件上传到服务器的指定文件夹中,也可以保存在数据库中,本篇主要说明smartupload组件上传. 在讲解smartupload上传前,我们先来看看不使用 ...

随机推荐

  1. 利用cgroup控制进程使用的资源(cpu、内存等)

    实验环境:centos 6.10 1.安装libcgroup yum install -y libcgroup 2.进入资源控制器默认挂载目录/cgroup [root@hadoop1 cgroup] ...

  2. 【笔记】css3实现网页平滑过渡效果...

    参考:http://www.imooc.com/video/7142 未完. <!DOCTYPE html> <html> <head> <meta char ...

  3. java常见异常(更新中)

    Java的异常分为两种,一种是运行时异常(RuntimeException),一种是非运行异常也叫检查式异常(CheckedException) .NullPointerException 空指针异常 ...

  4. 2062326 齐力锋 实验三《敏捷开发与XP实践》实验报告

    北京电子科技学院(BESTI) 实 验 报 告 课程: 程序设计与数据结构 班级: 1623 姓名: 齐力锋 学号: 20162326 成绩: 指导教师: 娄嘉鹏/王志强 实验日期: 2017年5月1 ...

  5. JAVA文件下载,页面显示另存为效果

    经过测试  firefox.QQ.IE 浏览器是可以的  chrome浏览器不行(直接下载了) 1. 系统框架springmvc+jsp 2. 后台servlet代码 @RequestMapping( ...

  6. 近年现场比赛补题(From 2013 to 2018)[持续更新]

    2013年 Noip提高组 Day1 Day2 2014年 Noip提高组 Day1 Day2 2015年 2016年 2017年 2018年

  7. java处理图片base64编码的相互转换

    转载自http://www.cnblogs.com/libra0920/p/5754356.html 直接上代码 import sun.misc.BASE64Decoder; import sun.m ...

  8. JavaWeb -- Struts1 动态bean, 动态校验, 动态生成javascript 表单校验

    1. 动态formbean. 表单 JSP: <%@ page language="java" import="java.util.*" pageEnco ...

  9. PlusOne

    问题描述:一个数组每一位代表一个数字的每一位.数字高位在数组的低位.求数字加1后得到新数组. 算法分析:要从数组的高位到低位进行遍历. public class PlusOne { public in ...

  10. IIS注册.NET

    IIS中ASP.NET的版本号此时可选的有1.1.2.0和4.0三个,如果想让IIS把3个版本都集成上,那NET Framework 3种都要安装,默认安装到的是C 盘. IIS注册方式如下:1.1: ...