将JSON数据转换为Java对象

将JSON数据转换为Java对象

我希望能够从Java操作方法中的JSON字符串访问属性。字符串可用的简单方法是:myJsonString = object.getJson()。下面是字符串可能是什么样子的示例:

{
    'title': 'ComputingandInformationsystems',
    'id': 1,
    'children': 'true',
    'groups': [{
        'title': 'LeveloneCIS',
        'id': 2,
        'children': 'true',
        'groups': [{
            'title': 'IntroToComputingandInternet',
            'id': 3,
            'children': 'false',
            'groups': []
        }]
    }]}

在这个字符串中,每个JSON对象都包含一个其他JSON对象的数组。其目的是提取ID列表,其中任何给定对象都拥有包含其他JSON对象的组属性。我认为Google的gson是一个潜在的JSON插件。对于我如何从这个JSON字符串生成Java,有人能提供某种形式的指导吗?


温温酱
浏览 1249回答 3
3回答

largeQ

小心GSON!它非常酷,非常棒,但是第二次您想要做的不是简单的对象,您可以很容易地开始构建您自己的序列化程序(这不是那,那个很难)。另外,如果您有一个对象数组,并将一些json反序列化为该对象数组,那么真正的类型就会丢失!完整的对象甚至不会被复制!使用XStream.。如果使用jsonriver并设置适当的设置,就会将丑陋的类型编码到实际的json中,这样就不会丢失任何东西。为了真正的序列化而付出的小代价(丑陋的JSON)。

蝴蝶刀刀

奇怪的是,到目前为止提到的唯一合适的JSON处理器是gson。以下是更好的选择:杰克森 (GitHub)-强大的数据绑定(与POJO之间的JSON)、流(超快)、树模型(方便非类型化访问)Flex-JSON-高度可配置的序列化还有一个需要考虑的问题:根森-类似Jackson的功能,旨在使开发人员更容易配置
打开App,查看更多内容
随时随地看视频慕课网APP