锘??xml version="1.0" encoding="utf-8" standalone="yes"?>97人人在线,不卡一区二区三区视频,欧美激情精品久久久久久变态http://www.aygfsteel.com/RockFeeling/category/50880.htmlzh-cnSat, 18 Feb 2012 07:40:21 GMTSat, 18 Feb 2012 07:40:21 GMT60servlet + html 鍥劇墖涓婁紶http://www.aygfsteel.com/RockFeeling/archive/2012/02/18/370237.html灝嗛搴﹀吇鎴?/dc:creator>灝嗛搴﹀吇鎴?/author>Sat, 18 Feb 2012 07:06:00 GMThttp://www.aygfsteel.com/RockFeeling/archive/2012/02/18/370237.htmlhttp://www.aygfsteel.com/RockFeeling/comments/370237.htmlhttp://www.aygfsteel.com/RockFeeling/archive/2012/02/18/370237.html#Feedback0http://www.aygfsteel.com/RockFeeling/comments/commentRss/370237.htmlhttp://www.aygfsteel.com/RockFeeling/services/trackbacks/370237.htmlServlet錛?br />

package cn.com.seegoo.xm.front.servlets;

import java.io.File;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.Iterator;
import java.util.List;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.commons.fileupload.FileItem;
import org.apache.commons.fileupload.FileUploadBase.SizeLimitExceededException;
import org.apache.commons.fileupload.FileUploadException;
import org.apache.commons.fileupload.disk.DiskFileItemFactory;
import org.apache.commons.fileupload.servlet.ServletFileUpload;

import cn.com.seegoo.servletrest.servlets.BaseServlet;

public class PhotoUpServlet extends BaseServlet{
 final long MAX_SIZE = 10 * 1024 * 1024;// 璁劇疆涓婁紶鏂囦歡鏈澶т負(fù) 10M
    // 鍏佽涓婁紶鐨勬枃浠舵牸寮忕殑鍒楄〃
    final String[] allowtype = new String[] {"jpg","jpeg","gif","txt","doc","docx","mp3","wma","m4a","xls"};

    public PhotoUpServlet() {
        super();
    }

    public void destroy() {
        super.destroy();
    }

    @Override
    protected void service(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        response.setContentType("text/html");
        // 璁劇疆瀛楃緙栫爜涓篣TF-8, 榪欐牱鏀寔姹夊瓧鏄劇ず
        response.setCharacterEncoding("UTF-8");

        // 瀹炰緥鍖栦竴涓‖鐩樻枃浠跺伐鍘?鐢ㄦ潵閰嶇疆涓婁紶緇勪歡ServletFileUpload
        DiskFileItemFactory dfif = new DiskFileItemFactory();
        dfif.setSizeThreshold(4096);// 璁劇疆涓婁紶鏂囦歡鏃剁敤浜庝復(fù)鏃跺瓨鏀炬枃浠剁殑鍐呭瓨澶у皬,榪欓噷鏄?K.澶氫簬鐨勯儴鍒嗗皢涓存椂瀛樺湪紜洏
        dfif.setRepository(new File(request.getRealPath("/")
                + "upload"));// 璁劇疆瀛樻斁涓存椂鏂囦歡鐨勭洰褰?web鏍圭洰褰曚笅鐨剈ploadtemp鐩綍
        // 鐢ㄤ互涓婂伐鍘傚疄渚嬪寲涓婁紶緇勪歡
        ServletFileUpload sfu = new ServletFileUpload(dfif);
        // 璁劇疆鏈澶т笂浼犲昂瀵?br />        sfu.setSizeMax(MAX_SIZE);

        PrintWriter out = response.getWriter();
        // 浠巖equest寰楀埌 鎵鏈?涓婁紶鍩熺殑鍒楄〃
        List fileList = null;
        try {
            fileList = sfu.parseRequest(request);
        } catch (FileUploadException e) {// 澶勭悊鏂囦歡灝哄榪囧ぇ寮傚父
            if (e instanceof SizeLimitExceededException) {
                out.println("{message:'鏂囦歡灝哄瓚呰繃瑙勫畾澶у皬:"+MAX_SIZE+"瀛楄妭'}");
                return;
            }
            e.printStackTrace();
        }
        // 娌℃湁鏂囦歡涓婁紶
        if (fileList == null || fileList.size() == 0) {
            out.println("{message:'璇烽夋嫨涓婁紶鏂囦歡'}");
            return;
        }
        // 寰楀埌鎵鏈変笂浼犵殑鏂囦歡
        Iterator fileItr = fileList.iterator();
        // 寰幆澶勭悊鎵鏈夋枃浠?br />        while (fileItr.hasNext()) {
            FileItem fileItem = null;
            String path = null;
            long size = 0;
            // 寰楀埌褰撳墠鏂囦歡
            fileItem = (FileItem) fileItr.next();
            // 蹇界暐綆鍗昮orm瀛楁鑰屼笉鏄笂浼犲煙鐨勬枃浠跺煙(<input type="text" />絳?
            if (fileItem == null || fileItem.isFormField()) {
                continue;
            }
            // 寰楀埌鏂囦歡鐨勫畬鏁磋礬寰?br />            path = fileItem.getName();
            // 寰楀埌鏂囦歡鐨勫ぇ灝?br />            size = fileItem.getSize();
            if ("".equals(path) || size == 0) {
                out.println("{message:'璇烽夋嫨涓婁紶鏂囦歡'}");
                return;
            }

            // 寰楀埌鍘婚櫎璺緞鐨勬枃浠跺悕
            String t_name = path.substring(path.lastIndexOf("\\") + 1);
            // 寰楀埌鏂囦歡鐨勬墿灞曞悕(鏃犳墿灞曞悕鏃跺皢寰楀埌鍏ㄥ悕)
            String t_ext = t_name.substring(t_name.lastIndexOf(".") + 1);
            // 鎷掔粷鎺ュ彈瑙勫畾鏂囦歡鏍煎紡涔嬪鐨勬枃浠剁被鍨?br />            int allowFlag = 0;
            int allowedExtCount = allowtype.length;
            for (; allowFlag < allowedExtCount; allowFlag++) {
                if (allowtype[allowFlag].equals(t_ext))
                    break;
            }
            if (allowFlag == allowedExtCount) {
                String message = "";
                for (allowFlag = 0; allowFlag < allowedExtCount; allowFlag++){
                    message+="*." + allowtype[allowFlag]
                                                + " ";
                }
                out.println("{message:'璇蜂笂浼犱互涓嬬被鍨嬬殑鏂囦歡"+message+"'}");
                return;
            }

            long now = System.currentTimeMillis();
            // 鏍規(guī)嵁緋葷粺鏃墮棿鐢熸垚涓婁紶鍚庝繚瀛樼殑鏂囦歡鍚?br />            String prefix = String.valueOf(now);
            // 淇濆瓨鐨勬渶緇堟枃浠跺畬鏁磋礬寰?淇濆瓨鍦╳eb鏍圭洰褰曚笅鐨剈pload鐩綍涓?br />            String u_name = request.getRealPath("/") + "upload/"
                    + prefix + "." + t_ext;
            //鍘熸潵鐨勬枃浠跺悕
            path=request.getRealPath("/") + "upload/"+path;
            try {
                // 淇濆瓨鏂囦歡
                fileItem.write(new File(path));
                response.setStatus(200);
                out.println("{message:\"鏂囦歡涓婁紶鎴愬姛. 宸蹭繚瀛樹負(fù): " + prefix + "." + t_ext
                        + " 鏂囦歡澶у皬: " + size + "瀛楄妭\"}");
            } catch (Exception e) {
                e.printStackTrace();
            }

        }
    }

}



JS錛?br />

function ajaxFileUpload()
    {
       
        $("#loading")
        .ajaxStart(function(){
            $(this).show();
        })//寮濮嬩笂浼犳枃浠舵椂鏄劇ず涓涓浘鐗?br />        .ajaxComplete(function(){
            $(this).hide();
        });//鏂囦歡涓婁紶瀹屾垚灝嗗浘鐗囬殣钘忚搗鏉?br />       
        $.ajaxFileUpload
        (
            {
                url:'PhotoUpServlet',//鐢ㄤ簬鏂囦歡涓婁紶鐨勬湇鍔″櫒绔姹傚湴鍧
                secureuri:false,//涓鑸緗負(fù)false
                fileElementId:'fileField',//鏂囦歡涓婁紶絀洪棿鐨刬d灞炴?nbsp; <input type="file" id="file" name="file" />
                dataType: 'json',//榪斿洖鍊肩被鍨?涓鑸緗負(fù)json
                success: function (data, status)  //鏈嶅姟鍣ㄦ垚鍔熷搷搴斿鐞嗗嚱鏁?br />                {
                    //alert(data.message);//浠庢湇鍔″櫒榪斿洖鐨刯son涓彇鍑簃essage涓殑鏁版嵁,鍏朵腑message涓哄湪struts2涓畾涔夌殑鎴愬憳鍙橀噺
                    $('#myspan').html(data.message);
                    if(typeof(data.error) != 'undefined')
                    {
                        if(data.error != '')
                        {
                            //alert(data.error);
                            $('#myspan').html(data.message);
                        }else
                        {
                            //alert(data.message);
                            $('#myspan').html(data.message);
                        }
                    }
                },
                error: function (data, status, e)//鏈嶅姟鍣ㄥ搷搴斿け璐ュ鐞嗗嚱鏁?br />                {
                    //alert(e);
                    $('#myspan').html(e);
                }
            }
        )
       
        return false;

    }

鐣岄潰錛?br />

<body>

 <img src="images/loading.gif" id="loading" style="display: none;">

   <span style="color: red;" id="myspan"></span><br/>

        <input type="file" id="fileField" name="file" />
        <br />
        <input type="button" value="涓婁紶" onclick="return ajaxFileUpload();">
</body>

web.xml:

<servlet>
        <servlet-name>PhotoUpServlet</servlet-name>
        <servlet-class>cn.com.seegoo.xm.front.servlets.PhotoUpServlet</servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>PhotoUpServlet</servlet-name>
        <url-pattern>/PhotoUpServlet</url-pattern>
    </servlet-mapping>



]]>
主站蜘蛛池模板: 湘阴县| 蒲城县| 北京市| 湾仔区| 靖州| 龙陵县| 莆田市| 石泉县| 平武县| 永靖县| 丰台区| 阿鲁科尔沁旗| 淮安市| 泌阳县| 湖北省| 兖州市| 竹溪县| 东莞市| 河池市| 临潭县| 金乡县| 万载县| 新丰县| 沂源县| 赞皇县| 兰州市| 建瓯市| 山丹县| 平江县| 固阳县| 汨罗市| 成安县| 绩溪县| 隆德县| 大庆市| 休宁县| 永平县| 莫力| 阜宁县| 富锦市| 舒城县|