创建JSON对象并将其转换为Java中的String

时间:2011-04-16 09:38:11

标签: java string json http

我需要通过http帖子发送一个相当长的JSON头。在Python中是这样的:

    self.body_header = {
                "client": self.client_name,
                "clientRevision": self.client_version,
                "uuid": str(uuid.uuid4()),
                "session": self.get_sessionid()}

    self.body = {
                "header": self.body_header,
                "country": {"IPR":"1021", "ID":"223", "CC1":"0", "CC2":"0", "CC3":"0", "CC4":"2147483648"},
                "privacy": 1}

我需要在Java中做类似的事情,即以某种方式创建一个JSON结构,将其转换为String并通过http发送它。

问题是,我怎样才能轻松实现这一目标?有用的库吗?我知道如何发送它,但不知道如何构建它然后创建一个String。

谢谢大家。

3 个答案:

答案 0 :(得分:3)

您可以使用gson

您可以通过执行以下操作创建Java对象(PO​​JO)并将其序列化为JSON:

Gson gson = new Gson();
String json = gson.toJson(yourObject);

然后,您可以通过HTTP发送字符串。

如果您不想使用POJO路线,您仍然可以使用Gson API中的JsonElementJsonArrayJsonObject创建JSON结构。

答案 1 :(得分:2)

我喜欢原来的org.json

答案 2 :(得分:0)