如何将javascript数组发送到Servlet

时间:2013-12-05 03:28:19

标签: javascript arrays servlets

我有一个应用程序,我在控制台中以javascript数组的形式获取一些值。现在我想将值发送到servlet.My javascript数组看起来像这样..

0.Java
1.Perl
2.C#

我在console.i中得到的这些值必须将这些值发送到Servlet.But我不能这样做。我能够向Servlet发送多个值,但不知道如何发送javascript数组。我向Servlet发送多个值的方式是

 $.ajax({
        url: "AccountServlet",
        type: "post",

        dataType: "json",
        data: { subject1:java,subject2:perl..etc},
        error:function(){
            //alert("error occured!!!");
        },
        success:function(data){
            alert(data.fullName + "\n" + data.mobileNo);
        }
     });

在Servlet中我抓住了它们

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

    String sub1=request.getParameter("subject1");
            String sub2=request.getParameter("subject2);
    ;

喜欢这个,但任何人都可以帮我如何在这里存储javascript数组。     }

1 个答案:

答案 0 :(得分:2)

有几种方法可以解决这个问题,但最简单的方法是将数组作为javascript代码中的一个参数传递,然后在Java代码中将其作为字符串检索。使用像GsonSimple JSON这样的JSON库将数组从字符串解析为本机Java数组。

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

Gson gson = new Gson();
String[] arr = gson.fromJson(request.getParamenter("subjects"), String[].class); 
 // ... do more here
}