精华内容
下载资源
问答
  • Java中将Map转换JSON
    千次阅读
    2021-11-04 22:17:25

    一个注意的地方:要选对jar包

    		Map map = new HashMap();
            map.put("success", "true");
            map.put("photoList", photoList);
            map.put("currentUser", "zhang");
    
            //net.sf.json.JSONObject 将Map转换为JSON方法
            JSONObject json = JSONObject.fromObject(map);
    
            //org.json.JSONObject 将Map转换为JSON方法
            JSONObject json =new JSONObject(map);
    
    更多相关内容
  • 主要介绍了Java中快速把map转成json格式的方法,本文使用json-lib.jar中的JSONSerializer.toJSON方法实现快速把map转换json,需要的朋友可以参考下
  • 多层嵌套json转换Map转换为单层 最近在实习的时候,需要将多层嵌套的json转换为单层的json。并且把json进行格式化。于是参照网上的网上的方法使用谷歌的gson利用递归的实现了多层json转换为单层的json。如 {...
  • map转换JSON

    千次阅读 2021-04-22 09:21:08
    方式一:json-lib <dependency> <groupId>net.sf.json-lib</groupId> <artifactId>json-lib</artifactId> <version>2.4</version> <classifier>...

    方式一: json-lib

    
                    <dependency>
    			<groupId>net.sf.json-lib</groupId>
    			<artifactId>json-lib</artifactId>
    			<version>2.4</version>
    			<classifier>jdk15</classifier>
    		</dependency>
    
    
    import java.util.HashMap;
    
    import java.util.Map;
    
     
    
    import net.sf.json.JSONObject;
    
     
    
    public class test{
    
    	  public static void main(String[] args) {
    
    	        Map map = new HashMap();
    
    	        map.put("test", "test1");
    
    	        JSONObject jsonObject = JSONObject.fromObject(map);
    
    	        System.out.println("输出的结果是:" + jsonObject);
    
    	        //3、将json对象转化为json字符串
    
    	        String result = jsonObject.toString();
    
    	        System.out.println(result);
    
    	    }
    
    }
    

    json-lib是一个比较老的解决方案,近几年都没有升级过,它的适用环境是JDK1.5,使用JDK1.6就有可能会报错。所以配置上加入classifier-jdk15来解决这个问题。 

    方式二:alibaba

    <dependency>
        <groupId>com.alibaba</groupId>
        <artifactId>fastjson</artifactId>
        <version>1.2.41</version>
    </dependency>
      public static void main(String[] args) {
            Map<String, String> map = new HashMap<>();
            map.put("test", "test1");
            map.put("target", "from");
            String jsonString = JSONObject.toJSONString(map);
            System.out.println(jsonString);
            Map<String, String> map2 = JSONObject.parseObject(jsonString, Map.class);
            System.out.println(map2.get("test"));
        }

     方式三:google--Gson

    
    <!-- https://mvnrepository.com/artifact/com.google.code.gson/gson -->
    
    <dependency>
        <groupId>com.google.code.gson</groupId>
        <artifactId>gson</artifactId>
        <version>2.3.1</version>
    </dependency>
    
    public static void main(String[] args) {
            Map<String, String> map = new HashMap<>();
            map.put("test", "test1");
            map.put("target", "from");
           
            Gson gson = new Gson();
            String gsonStr = gson.toJson(map);
            System.out.println(gsonStr);
            Map map3 = gson.fromJson(gsonStr, Map.class);
            System.out.println(map3.get("target"));
        }

     

    展开全文
  • 在存储的时候想把数据列表存储成json string,但是在代码使用的时候又觉得用map更快更方便。这个时候就需要相互转换,下面是一个转换的例子。 // Test for json and map converting package main import ( ...
  • 主要介绍了利用gson将map转为json示例,需要的朋友可以参考下
  • list map转换json格式数据以及相关的jar包 list转换后格式: [{"address":"广东省惠州","name":"tom","id":1,"age":23},{"address":"广东省深圳市","name":"jone","id":2,"age":84}] map转换后格式: {"address":...
  • json 转换map

    2019-04-03 01:11:40
    NULL 博文链接:https://576017120.iteye.com/blog/1463849
  • JAVA-map转换json异常

    千次阅读 2018-11-27 17:38:50
    背景介绍下:后台传过去json数据是用阿里的fastjson转换的,调用的是这个方法 String s = JSON.toJSONStringWithDateFormat(o,dateformat,SerializerFeature.WriteDateUseDateFormat); ServletActionContext....

    问题描述:
    今天在做后台传数据到前端解析的时候遇到了这个问题。背景介绍下:后台传过去json数据是用阿里的fastjson转换的,调用的是这个方法

    String s = JSON.toJSONStringWithDateFormat(o,dateformat,SerializerFeature.WriteDateUseDateFormat);
    ServletActionContext.getResponse().getWriter().write(s);
    

    其中dataformat是格式化时间数据的。传过去的是一个PageBean对象,该对象继承了Page对象,Page里面包含list,pageNo,pageSize。前台在通过data.list准备取出list循环做点事情的时候,发现全是undefined,通过console.log(data.list),发现这个数据竟然是这个东西 r e f : &quot; ref: &quot; ref:".list[0]"。百度搜了下,这里就是循环引用造成的。
    问题分析:

    循环引用:当一个对象包含另一个对象时,fastjson就会把该对象解析成引用。引用是通过$ref标示的,下面介绍一些引用的描述
    "$ref":".." 上一级
    "$ref":"@" 当前对象,也就是自引用
    "$ref":"$" 根对象
    "$ref":"$.children.0" 基于路径的引用,相当于 root.getChildren().get(0)
    

    解决方案:
    fastjson提供了多种json转换方案,有兴趣的同学可以自己看看源码,这里我们可以采用禁止循环引用的方案:

    String s = JSON.toJSONStringWithDateFormat(0,"yyyy-MM-dd HH:mm:ss",SerializerFeature.DisableCircularReferenceDetect);
    

    其中:SerializerFeature.DisableCircularReferenceDetect就是禁止循环引用的方案,我们可以通过枚举类SerializerFeature来查看到底有多少种方式:

    public enum SerializerFeature {
        QuoteFieldNames,
        UseSingleQuotes,
        WriteMapNullValue,
        WriteEnumUsingToString,
        UseISO8601DateFormat,
        /**
         * @since 1.1
         */
        WriteNullListAsEmpty,
        /**
         * @since 1.1
         */
        WriteNullStringAsEmpty,
        /**
         * @since 1.1
         */
        WriteNullNumberAsZero,
        /**
         * @since 1.1
         */
        WriteNullBooleanAsFalse,
        /**
         * @since 1.1
         */
        SkipTransientField,
        /**
         * @since 1.1
         */
        SortField,
        /**
         * @since 1.1.1
         */
        @Deprecated
        WriteTabAsSpecial,
        /**
         * @since 1.1.2
         */
        PrettyFormat,
        /**
         * @since 1.1.2
         */
        WriteClassName,
     
        /**
         * @since 1.1.6
         */
        DisableCircularReferenceDetect,
     
        /**
         * @since 1.1.9
         */
        WriteSlashAsSpecial,
        
        /**
         * @since 1.1.10
         */
        BrowserCompatible,
        
        /**
         * @since 1.1.14
         */
        WriteDateUseDateFormat,
        
        /**
         * @since 1.1.15
         */
        NotWriteRootClassName,
        
        /**
         * @since 1.1.19
         */
        DisableCheckSpecialChar,
        
        /**
         * @since 1.1.35
         */
        BeanToArray
        ;
     
        private SerializerFeature(){
            mask = (1 << ordinal());
        }
     
        private final int mask;
     
        public final int getMask() {
            return mask;
        }
     
        public static boolean isEnabled(int features, SerializerFeature feature) {
            return (features & feature.getMask()) != 0;
        }
     
        public static int config(int features, SerializerFeature feature, boolean state) {
            if (state) {
                features |= feature.getMask();
            } else {
                features &= ~feature.getMask();
            }
     
            return features;
        }
    }
    
    

    转自:https://blog.csdn.net/u013185616/article/details/52799166

    展开全文
  • java将map转换json字符串存取数据库

    千次阅读 2019-03-20 17:17:03
    /*将map转换json字符串并且存入数据库的字段中*/ @RequestMapping("add") public String addProject(){ Map,Integer> map=new HashMap,Integer>(); map.put("第1个问题:",18); map.put("第2个问题:",12); ...

    今天真是 非常头大的一天,不过没关系,加油!!!!

    先看看存入的格式

         例如:  {"第1个问题:":18,"第3个问题:":132,"第2个问题:":12,"第4个问题:":123,"第5个问题:":138,"第6个问题:":65}

                       {"goods_id":140861765,"cat_id":210,"goods_sn":171073501,"goods_sn_back":171073501,"goods_upc":11,"goods_name":45}

    好了 ,进入正文

    1.要有个数据库,并且有一张表(我的表是property,里面有两个字段id自增,name 类型是 text) mysql数据库,我用的大三层,在这里就不写service了,为了简单的测试

    2.添加主要的依赖

    <!-- https://mvnrepository.com/artifact/com.google.code.gson/gson -->
            <!--主要的-->
            <dependency>
                <groupId>com.google.code.gson</groupId>
                <artifactId>gson</artifactId>
                <version>2.8.2</version>
            </dependency>
    
            <!-- https://mvnrepository.com/artifact/org.codehaus.jackson/jackson-mapper-asl -->
            <!--主要的-->
            <dependency>
                <groupId>org.codehaus.jackson</groupId>
                <artifactId>jackson-mapper-asl</artifactId>
                <version>1.9.13</version>
            </dependency>

    3.创建实体类

    package com.example.entity;
    /*project实体类*/
    public class Project {
        private Integer id;
        private String name;
    
        public Integer getId() {
            return id;
        }
    
        public void setId(Integer id) {
            this.id = id;
        }
    
        public String getName() {
            return name;
        }
    
        public void setName(String name) {
            this.name = name;
        }
    }
    

    4.创建mapper接口

    package com.example.mapper;
    
    import org.apache.ibatis.annotations.Mapper;
    
    @Mapper
    public interface ProjectMapper {
        //增加json串
        public Integer addproject(String name);
        //获取json字符串
        public String getname();
    }
    

    5.对mapper接口的sql编写

    <!DOCTYPE mapper  PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"  "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
    <mapper namespace="com.example.mapper.ProjectMapper">
        <insert id="addproject" parameterType="String">
            INSERT INTO school.project
            (
            NAME
            )
            VALUES
            (
            #{name}
            );
        </insert>
    
        <!--我数据库里六条数据,我固定接受 第六条做测试-->
        <select id="getname"  resultType="string">
            SELECT
            NAME
    
            FROM
            school.project
            WHERE id=6
        </select>
    </mapper>

    6.controller控制层

    package com.example.controller;
    
    import com.example.mapper.ProjectMapper;
    import org.codehaus.jackson.JsonGenerationException;
    import org.codehaus.jackson.map.JsonMappingException;
    import org.codehaus.jackson.map.ObjectMapper;
    import com.google.gson.Gson;
    import com.google.gson.JsonSyntaxException;
    import com.google.gson.reflect.TypeToken;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.stereotype.Controller;
    import org.springframework.web.bind.annotation.RequestMapping;
    
    import java.io.IOException;
    import java.util.HashMap;
    import java.util.Map;
    
    @Controller
    public class ProjectController {
        @Autowired
        private ProjectMapper projectMapper;
    
        /*将map转换为json字符串并且存入数据库的字段中*/
        @RequestMapping("add")
        public String addProject(){
            Map<String,Integer> map=new HashMap<String,Integer>();
            map.put("第1个问题:",18);
            map.put("第2个问题:",12);
            map.put("第3个问题:",132);
            map.put("第4个问题:",123);
            map.put("第5个问题:",138);
            map.put("第6个问题:",65);
    
            ObjectMapper json = new ObjectMapper();
            String names=null;
            try {
                names = json.writeValueAsString(map);
                System.out.println("++++++++++++++++++转成的json格式字符串:"+names);
            } catch (JsonGenerationException e) {
                e.printStackTrace();
            } catch (JsonMappingException e) {
                e.printStackTrace();
            } catch (IOException e) {
                e.printStackTrace();
            }
    
            /*将json加入数据库中*/
            projectMapper.addproject(names);
            return "";
        }
    
        /*获取json字符串并转换为map */
        @RequestMapping("get")
        public String getProject(){
            //查询出json字符串
            String name=projectMapper.getname();
    
            Map<String, Integer> res = null;
            try {
                Gson gson = new Gson();
                /*将json格式的字符串,转换为map*/
                res = gson.fromJson(name, new TypeToken<Map<String, Integer>>() {
                }.getType());
            } catch (JsonSyntaxException e) {
            }
    
            System.out.println(res);
            /*这里不需要进入页面,只是做测试*/
            return "";
        }
    }
    

     

    展开全文
  • Golang map转换json

    2020-09-19 20:31:09
    m :=map[string]string{"type":"10","msg":"hello."} mjson,_ :=json.Marshal(m) mString :=string(mjson) fmt.Printf("print mString:%s",mString) 在Api接口项目调用 res,err := DB().Query("select count(id) as...
  • GSON是由Google开发并开源的实现Java对象与JSON之间相互转换功能的类库,这里我们来看一下使用GSON库将Java中的map键值对应结构对象转换JSON的示例:
  • fastjson把map等对象转换json时出现$ref的情况 "颜色": [ { "$ref": "$.itemSkuList[0].itemSpecificationList[0]" }, { "$ref": "$.itemSkuList[1].itemSpecificationList[0]
  • map转换JSON的方法

    万次阅读 多人点赞 2018-08-29 19:25:15
    第一种alibaba falstjson: ...1.MapJSON Map<String, Object> map = new HashMap<String, Object>(); map.put("a", "a"); map.put("b", "123"); JSONObject json = new JSONO...
  • 需求:需要将一个格式是[String,MonthValue]的map转换json,这里YearValue是自定义的case class。 MonthValue长这样,这里需要加上@BeanProperty注解,否则 fastjson解析不到。 case class MonthValue(@Bean...
  • map转换JSON的3种方法

    千次阅读 2021-03-04 03:40:02
    1json-libnet.sf.json-libjson-lib2.4jdk15import java.util.HashMap;import java.util.Map;import net.sf.json.JSONObject;public class aaa {public static void main(String[] args) {Map map = new HashMap();m....
  • 对象转换JSONMap

    2014-08-27 21:09:17
    简单的对象转换json对象,和把对象转换map的技巧
  • JSON包的妙用,一个函数完成几种数据结构转换方案 1.结构体转map 2.map转结构体 3.结构体数据转移到结构体 4.json字符串转结构体 package main import ( encoding/json fmt reflect ) type User struct { Name ...
  • 想到两种方式,一是新建实体类,然后转化为JSON,小编比较懒,直接Map多香呀!我们直接只有阿里巴巴的fastjson来进行转化即可,很方便! 二、理想转化展示 {"gender":"男","name":"小明","age":"18"} // 为空显示 {}...
  • 页面向后台action传递一个json字符串,需要将json字符串转换Map对象 public Map<String> toMap(Object object) { Map<String> data = new HashMap(); // 将json字符串转换成jsonObject JSONObject jsonObject...
  • json工具类,json转为对象,jsonmap。对象转json。便于使用
  • mapjson 格式之间转换

    千次阅读 2017-08-06 17:00:59
    前端接收到请求数据后保存为MAP格式。传给后台时采用JSON格式。分别写了二种方法进行比较处理。 - 方法一: String strRecvPage = "{"; Set<String> keySet = paramMap.keySet(); for(Iterator<String> it =keySet...
  • js中mapjson互转

    2019-10-12 18:29:40
    //对象转map const objChangeMap = (obj) => { let map = new Map(); for(let key in obj) { map.set(key,obj[key]); } ...//map转为json const mapChangeObj = (map) => { let o...
  • kotlin mapJson转换Json解析

    千次阅读 2021-12-10 13:11:44
    kotlin json入参,json解析
  • jquery MapJSON

    千次阅读 2019-12-10 10:19:47
    /** * Mapjson */ function MapTOJson(map) { var str = '{'; var i = 1; for (var key in map) { ...
  • mapjson字符串

    万次阅读 2019-06-27 17:49:15
    Map<String, Object> params = new HashMap<>(); params.put("a","11111"); params.put("b","2222"); System.out.println(params);//{"a":"11111","b":"22222"} String json = JSON.toJSONString(pa...
  • JOSN格式内层都可以转换map 详细见附件

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 139,173
精华内容 55,669
关键字:

map转换json

友情链接: 方案一.rar