java - 将两个 java 列表传递给 GSON/JSON

标签 java jquery ajax servlets

我想传两个List<String>发送给 Gson 并使用 $.post 捕获它们在我的 jQuery.目前我的 servlet 中有第一个列表:

String json_list = gson.toJson(suggested_list);
response.setContentType("application/json");
response.setCharacterEncoding("UTF-8");
response.getWriter().write(json_list);

我通过 $.post 得到它,如下所示:

$(document).ready(function() {
    $(".word_sugest").click(function() {
    var physical_exam =  jQuery("textarea#examination").val();
        $.post("MyServlet", { examination : physical_exam},function(responseJson) {
        var $textarea = $('<textarea rows="10" cols="20" id="words_suggested">').appendTo($('#words'));
        var areavalue = $('#words_suggested').val();    
            $.each(responseJson, function(key,value) {
            $('#words_suggested').val($('#words_suggested').val()+value+"\n");
            });
        });
    });
});

如何获得具有相同 $.post 的另一个列表Ajax 事件?有人可以帮忙吗?

最佳答案

我认为最简单的解决方案是让 AJAX 调用返回 JSON 对象而不是列表。这样您就可以命名您的列表。以下是输出的示例:

{
  list1: ["A", "B", "C", "D"],
  list2: ["R", "S", "T", "U", "V", "W"]
}

这是通过创建如下 Java 对象来完成的:

public class CustomObjResponse {
  private List<String> list1;
  private List<String> list2;
  // Getters/setters
}

然后,当您使用两个列表填充对象时,您的 Gson 调用将如下所示:

String json_obj = gson.toJson(customObjResp);

关于java - 将两个 java 列表传递给 GSON/JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15792145/

相关文章:

javascript - 如何在没有 eval() 的情况下执行存储为字符串的函数

带有页眉/页脚的 jQuery 风格自动完成

jquery - Angular 中的 jQuery.when() 相当于什么

Jquery 表单 ajaxSubmit 未提交

java - 如何将 Activity 的布局背景宽度设置为 100%

未设置 -Djava.ext.dirs 时未从目录加载 Java SPI JAR

php - Laravel : I want to return the result of chunk function , 使用 Ajax 将其显示在 View 中

javascript - 尝试使用 ajax 发布数据,但在添加一些字符串时似乎会中断

java - Firebase 数据库快照动态回收 View 数组列表

java - 更新 Java ArrayList 中的值