map与json互转以及map与string互转

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/m0_38001814/article/details/87165158

map与json互转可以利用fastJson类库或者jackson类库进行转换,map与string互转利用谷歌的guava类库进行转换,guava是一款功能强大的类库工具,感觉每个java开发人员都应熟悉下.. 下面先贴pom依赖,

        <dependency>
            <groupId>org.codehaus.jackson</groupId>
            <artifactId>jackson-mapper-asl</artifactId>
            <version>1.9.13</version>
        </dependency>

        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>fastjson</artifactId>
            <version>1.2.48</version>
        </dependency>

        <dependency>
            <groupId>com.google.guava</groupId>
            <artifactId>guava</artifactId>
            <version>18.0</version>
            <scope>compile</scope>
        </dependency>

代码:

        Map<String, String> map = Maps.newHashMap();
        map.put("key01","value01");
        map.put("key02","value02");
        map.put("key03","value03");
        try {
            System.out.println("map :" + map);
            // 利用jackson进行互转
            ObjectMapper mapper = new ObjectMapper();
            String json = mapper.writeValueAsString(map);
            System.out.println("map to json 1 :" + json);
            // 利用fastJson进行互转
            Object o = JSONObject.toJSON(map);
            System.out.println("map to json 2 :" + o.toString());
            System.out.println("json to map 1 :" + mapper.readValue(json, Map.class));
            System.out.println("json to map 2 :" + JSON.parseObject(json, Map.class));
            String mapToStr = Joiner.on(",").withKeyValueSeparator(":").join(map);
            System.out.println("map to str :" + mapToStr);
            // 利用Splitter内部类的引用,得到分割器,将字符串解析为map
            Splitter.MapSplitter ms = Splitter.on(",").withKeyValueSeparator(":");
            System.out.println("str to map :" + ms.split(mapToStr));
        } catch (Exception e) {

        }

输出如下图:

猜你喜欢

转载自blog.csdn.net/m0_38001814/article/details/87165158