ajaxfileupload.jsファイルのアップロード機能を利用するJavaコンポーネント実装

概要:

Javaでは、使用ajaxfileupload.js +コモンズ-するFileUpload-1.3.1.jarは、ファイルのアップロード機能を実現します。

キーワード:

Javaの、アップロード、ajaxfileupload、ファイルアップロード

コンテンツ:

ファイルのアップロードのWeb開発の側面は、多くの場合、単純な、アップロードコンポーネントの実用的な、良好なパフォーマンスがある場合ので、私はそれは素晴らしいと思い、に使用されている場合は、私はここに、良い選択である必要があり、それがajaxfileupload.js一度私の経験を共有することができます。

アップロードのプロセス全体は、JSPファイル、Javaファイル、JSファイル、コードJSPページで当社初見がありますファイル:

文件1:upload.jsp

<input type="file" name="attachfiles" id="attachfiles" />
<input type="button" value="点击上传" id="scbtn" />

はい、あなたはロングコードのjsファイルに続く2行のコード、などなどのために右、JSPページをお読みください。

文件2:upload.js

var basePath = null;
$(function() {
    basePath = $("#basePath").attr("value");
    $("#scbtn").click(function() {
        ajaxFileUpload();
    });

});
// 文件上传
function ajaxFileUpload() {
    $.ajaxFileUpload({
        url : basePath + "upload.ajax",// 用于文件上传的服务器端请求地址
        secureuri : false,// 一般设置为false
        fileElementId : 'attachfiles',// 文件上传控件的id属性
        dataType : 'json',// 返回值类型 一般设置为json
        enctype : "multipart/form-data",
        success : function(data, status) // 服务器成功响应处理函数
        {
        },
        error : function(data, status, e) {
        }
    });
    return false;
}

コードのJSの部分は、コードの使用は、その後訪れ、jQueryの中で次の自然なそのJavaコード、準備ができた背景に、AJAXリクエストを送信しているのですか?

文件3:UploadAjaxManager.java

package org.4spaces.demo;
import java.io.File;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.util.ArrayList;
import java.util.List;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.commons.fileupload.FileItem;
import org.apache.commons.fileupload.FileUploadException;
import org.apache.commons.fileupload.disk.DiskFileItemFactory;
import org.apache.commons.fileupload.servlet.ServletFileUpload;
/**
 * 
 * @author 四个空格:https://www.4spaces.org
 * 
 */
public class UploadAjaxManager extends HttpServlet {

    private static final long serialVersionUID = 1L;

    protected void doGet(HttpServletRequest request,
            HttpServletResponse response) throws ServletException, IOException {
        String uri = request.getRequestURI();
        int startIndex = uri.lastIndexOf("/") + 1;
        int endIndex = uri.lastIndexOf(".");
        String action = uri.substring(startIndex, endIndex);
        if (action.equals("upload")) {
            try {
                request.setCharacterEncoding("UTF-8");
            } catch (UnsupportedEncodingException e1) {
                e1.printStackTrace();
            }
            DiskFileItemFactory fac = new DiskFileItemFactory();
            ServletFileUpload upload = new ServletFileUpload(fac);
            upload.setHeaderEncoding("UTF-8");
            List<FileItem> fileList = new ArrayList<FileItem>();
            try {
                fileList = upload.parseRequest(request);
            } catch (FileUploadException ex) {
                ex.printStackTrace();
            }
            String targetPath = request.getSession().getServletContext()
                    .getRealPath("jsp/upload")
                    + "/";
            String fileName = "blank.doc";
            for (FileItem item : fileList) {
                if (!item.isFormField()) {
                    fileName = item.getName();
                    File saveFile = new File(targetPath + fileName);
                    try {
                        item.write(saveFile);
                    } catch (Exception e) {
                        e.printStackTrace();
                    }
                }
            }
        }
    }

    protected void doPost(HttpServletRequest request,
            HttpServletResponse response) throws ServletException, IOException {
        doGet(request, response);
    }
}

もちろん、上記のコードでは、ガイドをパックすることを忘れてはならない:commons-fileupload-1.3.1.jarcommons-io-2.4.jar

さて、上記のコードで、あなたは簡単にファイルをアップロードすることができます。

PS:

完全なプロジェクトとコードの住所オファー:エンジニアリングのソースコードを

おすすめ

転載: www.cnblogs.com/cobcmw/p/12367319.html