Java 使用AJAX将图像和附加信息发送到Servlet

Java 使用AJAX将图像和附加信息发送到Servlet,java,javascript,jquery,ajax,servlets,Java,Javascript,Jquery,Ajax,Servlets,你好 我需要从元素向servlet发送一个图像。 目前正在使用ajax var files; $("input[type='file']").on("change",function(e) { files = e.target.files; $("#Submit-Button").prop({"disabled":false}); }); $("#Submit-Button").on("click", function(){ var data

你好

我需要从
元素向servlet发送一个图像。 目前正在使用ajax

var files;
$("input[type='file']").on("change",function(e) {
        files = e.target.files;
        $("#Submit-Button").prop({"disabled":false});
});

$("#Submit-Button").on("click", function(){

        var data = new FormData();
        $.each(files, function(key, value){
            data.append(key, value);
        });

        $.ajax({
            url: "UploadServlet",
            type : "POST",
            data: data,
            cache: false,
            dataType: JSON,
            processData : false,
            contentType: false,
            success: function(data, textStatus, jqXHR){
                //SUCCESS
            },
            error: function(jqXHR, textStatus, errorThrown){
                    //ERROR
            }
        });
    })
});
这正在工作,我的servlet正在接收文件

但是,我想向servlet发送一些附加信息

我尝试过(使用js ajax方法)

和(在Javaservlet中)

String Filename=request.getParameter(“uid”)+request.getParameter(“用户名”)+“.png”;
Collection Parts=request.getParts();
这显然不起作用


现在我想不出任何方法可以解决我的问题。

添加文件的方法与添加任何其他数据的方法相同

...
data.append('userID', userID);
data.append('username', username);
...
    $.ajax({
...
        data: data,
...
    });

String Filename = request.getParameter("uid") + request.getParameter("username")+".png";
Collection<Part> Parts = request.getParts();
...
data.append('userID', userID);
data.append('username', username);
...
    $.ajax({
...
        data: data,
...
    });