JSP图片上传 公共工具类

需要jsmartcom_zh_CN.jar支持. 下载地址: https://files.cnblogs.com/simpledev/jsmartcom_zh_CN.rar 

<%@page import="com.bn.car.core.Constants"%>
<%@ page contentType="text/html;charset=UTF-8" language="java"
    import="java.io.*,java.awt.Image,java.awt.image.*,com.sun.image.codec.jpeg.*,java.sql.*,com.jspsmart.upload.*,java.util.*"%>

<%
    String pageSource  = request.getParameter("pageSource");  //定义接收的源页面,可以将该图片上传工具类独立抽象出来放入include文件夹中。
    
    SmartUpload mySmartUpload = new SmartUpload();

    long file_size_max = 4000000;

    String fileName2 = "", ext = "", testvar = "";

    
    String url = "";
    
    if(pageSource == "addparts" || pageSource.equals("addparts")){
        url = Constants.PARTSPATH;   //常量类定义上传目录
    }else if(pageSource == "addcar2" || pageSource.equals("addcar2")){
        url = Constants.CARPATH;    //常量类定义上传目录
    }
    
    //初始化 
    mySmartUpload.initialize(pageContext);

    //只允许上载此类文件 
    try {
        mySmartUpload.setAllowedFilesList("jpg,gif");//此处的文件格式可以根据需要自己修改 
        //上载文件 
        mySmartUpload.upload();
    } catch (Exception e) {
%>

    <SCRIPT language=javascript> 
    alert("只允许上传.jpg和.gif类型图片文件"); 
    </script> 
<%
    }

    try {
        com.jspsmart.upload.File myFile = mySmartUpload.getFiles().getFile(0);
        if (myFile.isMissing()) {
%>

    <SCRIPT language=javascript> 
        alert("请先选择要上传的文件"); 
    </script> 

<%
    }
        else {
            ext = myFile.getFileExt(); //取得后缀名 
            int file_size = myFile.getSize(); //取得文件的大小 
            String saveurl = "";
            if (file_size < file_size_max) {
                //更改文件名,取得当前上传时间的毫秒数值 
                Calendar calendar = Calendar.getInstance();
                String filename = String.valueOf(calendar.getTimeInMillis());
                //图片上传地址
                saveurl = Constants.ROOTPATH + url;
                String pic_url = filename + "." + ext;   //文件名+后缀
                saveurl += pic_url; //保存路径 

                myFile.saveAs(saveurl, SmartUpload.SAVE_PHYSICAL);

                String ret = "alert('上传成功!');";

                out.print("<script language=javascript>" + ret + "</script>");
                
                //将新上传的图片放入到session中.
                String picUrls = (String)session.getAttribute(pageSource + "_picUrls");

                if(picUrls == null){
                    session.setAttribute(pageSource + "_picUrls",pic_url);
                }else{
                    picUrls = pic_url + "," + picUrls; //以逗号分割. 新上传的在前面
                    session.setAttribute(pageSource + "_picUrls",picUrls);
                }
                
                //转发,根据原来的页面判断去向。
                if(pageSource == "addparts" || pageSource.equals("addparts")){
                    response.sendRedirect("../supply/addparts.jsp");
                }else if(pageSource == "addcar2" || pageSource.equals("addcar2")){
                    response.sendRedirect("../caruser/addcar2.jsp");
                }
                
            }

        }

    } catch (Exception e) {
        e.printStackTrace();
        out.print(e.toString());

    }
%>

 

posted @ 2013-11-27 19:58  全新时代-小小程序员大梦想  阅读(435)  评论(0编辑  收藏  举报