精华内容
下载资源
问答
  • java对象转json字符串

    千次阅读 2018-09-05 22:02:51
    java对象转json字符串? 解决方法: 使用阿里巴巴的fastjson:http://www.yayihouse.com/yayishuwu/chapter/1568

    java对象转json字符串?

    解决方法:

    使用阿里巴巴的fastjson:http://www.yayihouse.com/yayishuwu/chapter/1568

    展开全文
  • Java对象转Json字符串

    万次阅读 2016-08-27 19:40:34
    曾今遇到一个问题,需要将JavaBean转换为Json字符串,用fastjson可以很方便的做到。但是得到的结果是JavaBean成员变量的首字母编程了小写。经过查找资料,原来我们可以使用fastjson的@JsonField注解来自定义json中...

    曾今遇到一个问题,需要将Java对象转换为Json字符串,用fastjson可以很方便的做到。实现代码如下:

    import com.alibaba.fastjson.JSONObject;
    
    public class Result {
    
        private String RESULT_CODE;
        private String RESULT_VALUE;
    
        public String getRESULT_CODE() {
            return RESULT_CODE;
        }
        public void setRESULT_CODE(String rESULT_CODE) {
            RESULT_CODE = rESULT_CODE;
        }
        public String getRESULT_VALUE() {
            return RESULT_VALUE;
        }
        public void setRESULT_VALUE(String rESULT_VALUE) {
            RESULT_VALUE = rESULT_VALUE;
        }
    
        public static void main(String[] args) {
            Result result = new Result();
            result.setRESULT_CODE("0");
            result.setRESULT_VALUE("OK");
            String resultJson = JSONObject.toJSONString(result);
            System.out.println(resultJson);
        }
    }
    

    本来以为json中的key在json字符串中就是Java对象的成员变量,根据需要就把Java对象的成员变量按照返回结果的要求格式全部写成了大写,运行以上代码,得到如下结果:

    {"rESULT_CODE":"0","rESULT_VALUE":"OK"}

    根据以上输出结果,将Java对象转化成了Json字符串,但是Java对象成员变量首字母变成了小写,这个就不是我想要的结果了。

    后来经过查找资料,得知可以使用FastJson中@JSONField注解来解决,具体实现如下:

    import com.alibaba.fastjson.JSONObject;
    import com.alibaba.fastjson.annotation.JSONField;
    
    public class Result {
    
        private String RESULT_CODE;
        private String RESULT_VALUE;
    
        @JSONField(name = "RESULT_CODE")
        public String getRESULT_CODE() {
            return RESULT_CODE;
        }
        public void setRESULT_CODE(String rESULT_CODE) {
            RESULT_CODE = rESULT_CODE;
        }
        @JSONField(name = "RESULT_VALUE")
        public String getRESULT_VALUE() {
            return RESULT_VALUE;
        }
        public void setRESULT_VALUE(String rESULT_VALUE) {
            RESULT_VALUE = rESULT_VALUE;
        }
    
        public static void main(String[] args) {
            Result result = new Result();
            result.setRESULT_CODE("0");
            result.setRESULT_VALUE("OK");
            String resultJson = JSONObject.toJSONString(result);
            System.out.println(resultJson);
        }
    }
    

    运行以上代码,得到结果如下:

    {"RESULT_CODE":"0","RESULT_VALUE":"OK"}

    由以上结果得出,成员变量首字母小写的问题解决了。但是是什么原因导致的呢?

    原来fastjson的key是根据Java对象里面的getter和setter方法来的,不是根据属性名的,所以会出现这个问题,你在属性的get和set方法上面写上标注@JSONField(name = "RESULT_CODE") 就能解决了。

    那么,既然如此,有了注解之后是不是跟Java对象的成员变量就没关系了呢,我们把Java对象的成员变量改成小写,使用注解保持原来格式,继续测试。

    import com.alibaba.fastjson.JSON;
    import com.alibaba.fastjson.JSONObject;
    import com.alibaba.fastjson.annotation.JSONField;
    
    public class Result {
    
    
        private String result_code;
        private String result_value;
    
        @JSONField(name = "RESULT_CODE")
        public String getResult_code() {
            return result_code;
        }
        public void setResult_code(String result_code) {
            this.result_code = result_code;
        }
        @JSONField(name = "RESULT_VALUE")
        public String getResult_value() {
            return result_value;
        }
        public void setResult_value(String result_value) {
            this.result_value = result_value;
        }
    
        public static void main(String[] args) {
            Result result = new Result();
            result.setResult_code("0");
            result.setResult_value("OK");
            String resultJson = JSONObject.toJSONString(result);
            System.out.println(resultJson);
        }
    }
    

    运行以上程序,得到了跟之前一样的结果:

    {"RESULT_CODE":"0","RESULT_VALUE":"OK"}

    根据以上 结果得出,使用了fastjson的@JSONField之后,就可以在不改变Java对象成员变量的前提下,自定义json的输出格式了,这样看来还是很方便的。

    展开全文
  • 自己有空时用java反射写的json转化工具,有不完善之处,多包涵
  • java对象转json字符串报错

    千次阅读 2018-12-26 13:41:29
    java对象转json字符串报错: net.sf.json.JSONException: JSON does not allow non-finite numbers at net.sf.json.util.JSONUtils.testValidity(JSONUtils.java:597) ~[json-lib-jdk15-2.4.jar:na] at ...

    java对象转json字符串报错:

    net.sf.json.JSONException: JSON does not allow non-finite numbers
    	at net.sf.json.util.JSONUtils.testValidity(JSONUtils.java:597) ~[json-lib-jdk15-2.4.jar:na]
    	at net.sf.json.AbstractJSON._processValue(AbstractJSON.java:269) ~[json-lib-jdk15-2.4.jar:na]
    	at net.sf.json.JSONObject._processValue(JSONObject.java:2655) ~[json-lib-jdk15-2.4.jar:na]
    

    原因及解决办法:
    Double类型数据为isInfinite()或者isNaN()无法转成JSON字符串,需要处理:
    处理isInfinite()或者isNaN()的double值

    注册并使用自定义处理器

    日期格式化处理已经在截图中有了,方式和处理Double对象类似

    展开全文
  • Idea Debug 时 JAVA对象转Json字符串 的操作正常操作高级操作 用Idea很多年了,功能很多,常用的不多,这里介绍个实用的功能: 正常操作 查看某个实体对象的值,若在debug时选中对象直接复制,那得到的会是如下结果...

    Idea Debug 时 JAVA对象转Json字符串 的操作


    用Idea很多年了,功能很多,常用的不多,这里介绍个实用的功能:

    正常操作

    查看某个实体对象的值,若在debug时选中对象直接复制,那得到的会是如下结果:
    在这里插入图片描述

    DcUcEmployeeVo(picIds=[CsCommonAttachmentRelation(id=3281, attachId=null, relatedTableType=null, relatedTableId=null, downloadNum=null, sortOrder=null, createdDate=null, createdBy=null, lastUpdatedDate=null, lastUpdatedBy=null, removeFlag=null), CsCommonAttachmentRelation(id=3283, attachId=null, relatedTableType=null, relatedTableId=null, downloadNum=null, sortOrder=null, createdDate=null, createdBy=null, lastUpdatedDate=null, lastUpdatedBy=null, removeFlag=null)], picUrls=[], files=null, picUrl=, account=, plainPassword=null, roleId=4, roleName=null, organization=null, orgId=null, post=null, sexText=null, typeText=null, statusText=null, statusFlagText=null, code=null, createByText=null, updateByText=null, idAddressRegionPath=, idAddressRegionPathText=北京市北京市东城区, liveAddressRegionPath=, liveAddressRegionPathText=广东省深圳市南山区, employeeOrganizationList=[DcUcUserOrgVo(organization=null, post=null, active=null), DcUcUserOrgVo(organization=null, post=null, active=null), DcUcUserOrgVo(organization=null, post=null, active=null), DcUcUserOrgVo(organization=null, post=null, active=null)], verifyCode=454467, kw=null, flag=null, expandJson={})
    

    复制出来的结构基本都是 key=value 的格式,不仅不方便查看,也不方便取值复制已经提供文档啥的。

    高级操作

    在debug在停在断点处时,将光标定位在指定实体对象处,按快捷键Alt+F8 ,会出来Evaluate 的弹框,在Expression 下的输入框处输入Java代码(例如JsonObject.toJsonString(对象)),点击底部Evaluate,然后view出来的结果:
    在这里插入图片描述
    得到的结果就是我们想要的Json字符串。最后随便找个在线格式化的网站就得到我们想要的标准Json格式数据;

    例如 http://json.cn/#

    在这里插入图片描述

    展开全文
  • 接受对象转换为JSON数据格式并且作为字符串输出,map转换json,list转换json
  • /** * Gson对象转换为字符串并格式化<br/> * <业务逻辑><... * @return string 返回格式化后的json字符串 * @author Jihua Yi */ private String getPrettyGsonStr(Obj...
  • 顾名思义,这个是对象转Json时,发生的引用错误。 比较简单的方法是: 使用 帮助方法 https://blog.csdn.net/hanjun0612/article/details/77891569 ConverHelper.getListCopy(entity2)  ...
  • 这里写自定义目录标题引入依赖实体测试接口测试出现的问题及解决对象转json字符串出现的问题及解决 引入依赖 <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</...
  • js解析json数组+java对象转json字符串

    千次阅读 2016-07-20 18:48:24
    function checkoutUserlist(){ // js 解析json数组 var statuslist = [{"isAvailabe":"1","name":"pacoson"},{"isAvailabe":"0","name":"tangtang"},{"isAvailabe":"0","name":"zhangsan"},{"isAvailabe":"0",...
  • ObjectMapper-将java对象转为json字符串

    万次阅读 2018-08-23 19:15:40
    ObjectMapper可以实现Java对象json字符串间互相转换,我们经常用到的是它的Java对象转json字符串功能。 Java对象json字符串间的相互转换: 【json字符串转为Java对象:readValue(UserString,class类)】 ...
  • 以下是Json字符串转POJO对象 POJO对象转JSON字符串 List转JSON JSON转List的工具类,类中有例子可参照:package cn.rojao.utils;import java.util.List;import cn.rojao.entity.stat.RequestEntity;import ...
  • 1. 首先是Java对象转Json字符串.需要jar包.五个.分别如下:commons-beanutils-1.8.3.jarcommons-collections-3.2.1.jarcommons-lang-2.6.jarcommons-logging-1.1.1.jarezmorph-1.0.6.jarjson-lib-2.4-jdk15.jar先定义...
  • java 对象json字符串互相转换工具类所需要的jar,java 对象json字符串互相转换工具类
  • 主要用于将java对象转换为json对象字符串,或字符串数组。
  • java对象JSON字符串

    千次阅读 2016-12-15 20:05:26
    java对象JSON字符串
  • Gson在java对象json字符串之间转换

    千次阅读 2019-05-20 12:14:01
    Gson在java对象json字符串之间转换 转载:https://blog.csdn.net/JQ_AK47/article/details/52685298 Gson相比org.json最大的好处是从json字符串转向java实例时候少了依据每个实例自己赋值的过程,比如在org....
  • 通过json-lib实现Java对象json字符串的相互转换  下面的案例使用单元测试(junit)方式进行了测试,所以在测试中需要配置junit环境,本人使用的eclipse开发工具,eclipse自带junit测试环境但需要配置,其它的...
  • Java对象JSON字符串

    千次阅读 2012-08-14 17:59:21
    Java对象JSON字符串 包下载 地址 : http://download.csdn.net/detail/chenyi0834/4499629 废话不多说,直接上代码。 import java.lang.reflect.Type; import java.util.ArrayList; import ...
  • 写一个工具类,有两个方法,一个是输入类对象,输出类对象json字符串,还有一个是输入json字符串对象类型,输出类对象。 既然跟json有关,我开始百度了解json字符串: 百度是这样说的:JSON(JavaScript Object ...
  • net.sf.json.JSONObject可以处理简单java对象和格式正确的json字符串互相转换。 ...可以处理复杂的java集合...1.json字符串转简单java对象 2.简单java对象转json字符串 3.json字符串转集合对象 4.集合对象转json字符串
  • java对象转换为JSON字符串

    千次阅读 2017-08-26 23:26:30
    JackSon将java对象转换为JSON字符串 JackSon可以将java对象转换为JSON字符串,步骤如下: 1.导入JackSon 的jar包 2.创建ObjectMapper对象 3.使用ObjectMapper对象的writeValueAsString()方法将java对象...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 147,432
精华内容 58,972
关键字:

java对象转json的字符串

java 订阅