代码之家  ›  专栏  ›  技术社区  ›  KJW

使用JSON的Javascript到Java

  •  2
  • KJW  · 技术社区  · 14 年前

    我计划用JSON对Javascript数组对象进行编码,从而发送充满数据的Javascript数组对象。有什么好的jquery插件吗?

    在Java端,将JSON解析为Java数组的标准方法是什么?

    整体流程如下:

    1. Javascript编译当前页面上的大量数据并将其存储在数组中。
    2. 编码为JSON的数组对象。
    3. Java代码保存JSON。
    4. 重复,Java代码为每个页面编译连续的JSON。
    5. Java代码向服务器提交一个megajson。

    我的另一个问题是5。如何安全地向服务器提交大型JSON数据?

    3 回复  |  直到 14 年前
        1
  •  1
  •   haylem    14 年前

    在客户端,如果只支持现代浏览器,则可以使用本机浏览器JSON.stringify文件()API。否则,json2.js库就可以了。

    在服务器端,可以查看大量库:

    我先把你指给杰克逊看,在很多情况下,这似乎是最快的。然而,我发现每当我需要回到它的时候,它的文档就很难让我的思想四处游荡。Json-lib有时更容易掌握,用于不需要最高速度的小型任务,但仍然具有完全可接受的结果。 Gson也有很好的声誉,而且非常灵活,但是我之前遇到的基准似乎表明它的表现不如杰克逊。新发布的1.5版本可能已经改进了这一点,但我不知道。

    它可以归结为您想要的灵活性程度、您需要的性能,以及您想要一个简单的API还是不介意一个更复杂的API。

    关于安全性,我认为您最好的选择是支持SSL连接。否则,只需简单地使用基于JS的加密,就可以让窃听者更加困难,但这并不能保护你太多。为此,请查找SJCL(斯坦福Javascript加密库)。

        2
  •  1
  •   Community prosti    7 年前

    json2.js . 很好的一点是,如果本机JSON可用,您可以将其与相同的接口一起使用。json2.js负责有条件地添加函数。

    要提交数据,请执行以下操作:

    $.ajax({
        type: 'post',
        data: JSON.stringify(data),
        contentType: 'application/json',
        dataType: 'json'
    });
    

    这还假设服务器使用JSON进行响应。

    如果在传输过程中需要安全性,可以使用SSL。

    existing question json-simple . 它名副其实,JSONObject和JSONArray分别实现Map和List,我发现这是一个有用的特性。

        3
  •  1
  •   chubbsondubs    14 年前

    在Java端,您可以使用Flexjson来解析JSON。与其他JSON反序列化程序相比,它的使用非常简单,性能也非常好。此外,它直接将其反序列化到模型对象中,而无需编写锅炉代码在JSONObject/JSONArray之间转换到数据模型中。

    http://flexjson.sourceforge.net

    至于您对安全性的疑问,以及“Java代码向服务器提交一个megajson”是没有意义的。您担心哪些用例?