`

List、Object转换为Json格式字符串

    博客分类:
  • Java
 
阅读更多
引自博客:
http://hi.baidu.com/thankfuls/item/faf1aca88acbd8d35af1913b

package dsh.bikegis.tool;  
    
import java.beans.IntrospectionException;  
import java.beans.Introspector;  
import java.beans.PropertyDescriptor;  
import java.util.List;  
    
/** 
 * json的操作类 
 * @author NanGuoCan 
 * 
 */ 
public class JsonUtil {  
          
        /** 
          * @param object 
          *             任意对象 
          * @return java.lang.String 
          */   
        public static String objectToJson(Object object) {     
             StringBuilder json = new StringBuilder();     
            if (object == null) {     
                 json.append("\"\"");     
             } else if (object instanceof String || object instanceof Integer) {   
                 json.append("\"").append(object.toString()).append("\"");    
             } else {     
                 json.append(beanToJson(object));     
             }     
            return json.toString();     
         }     
          
        /** 
          * 功能描述:传入任意一个 javabean 对象生成一个指定规格的字符串 
          * 
          * @param bean 
          *             bean对象 
          * @return String 
          */   
        public static String beanToJson(Object bean) {     
             StringBuilder json = new StringBuilder();     
             json.append("{");     
             PropertyDescriptor[] props = null;     
            try {     
                 props = Introspector.getBeanInfo(bean.getClass(), Object.class)     
                         .getPropertyDescriptors();     
             } catch (IntrospectionException e) {     
             }     
            if (props != null) {     
                for (int i = 0; i < props.length; i++) {     
                    try {    
                         String name = objectToJson(props[i].getName());     
                         String value = objectToJson(props[i].getReadMethod().invoke(bean));    
                         json.append(name);     
                         json.append(":");     
                         json.append(value);     
                         json.append(",");    
                     } catch (Exception e) {     
                     }     
                 }     
                 json.setCharAt(json.length() - 1, '}');     
             } else {     
                 json.append("}");     
             }     
            return json.toString();     
         }     
          
        /** 
          * 功能描述:通过传入一个列表对象,调用指定方法将列表中的数据生成一个JSON规格指定字符串 
          * 
          * @param list 
          *             列表对象 
          * @return java.lang.String 
          */   
        public static String listToJson(List<?> list) {     
             StringBuilder json = new StringBuilder();     
             json.append("[");     
            if (list != null && list.size() > 0) {     
                for (Object obj : list) {     
                     json.append(objectToJson(obj));     
                     json.append(",");     
                 }     
                 json.setCharAt(json.length() - 1, ']');     
             } else {     
                 json.append("]");     
             }     
            return json.toString();     
         }  
}

 

分享到:
评论

相关推荐

    ajax json java 用法 json 将List、Object转换为Json格式字符串

    ajax json java 用法 json 将List、Object转换为Json格式字符串

    java实现将实体类list集合,转化成geojson字符串

    GeoJSON是一种对各种地理数据结构进行编码的格式,基于Javascript对象表示法(JavaScript Object Notation, 简称JSON)的地理空间信息数据交换格式。GeoJSON对象可以表示几何、特征或者特征集合。GeoJSON支持下面这几...

    Unity3D中任意类型数据转换成json数据的方法2

    Unity3D中任意类型数据转换成json数据的方法 Posted on 2013年03月20日 by U3d / Unity3D脚本/插件/被围观 275 次

    java jsonto对象互转

    * 将java对象转换成json字符串,并设定日期格式 * * @param javaObj * 要转换的java对象 * @param dataFormat * 制定的日期格式 * @return */ public static String objectToJson(Object javaObj, String ...

    2017XML字符串转对象Object 实现工具

    实现 XML字符串转VO对象的实现 1.0:标签读取,属性读取,List类型标签实现 以下是 测试说明 原XML: &lt;?xml version="1.0" encoding="UTF-8"?&gt; &lt;HEADER NAME="HEADERname" name_cn="头名称"&gt;标签text...

    json数组转化为list-Python入门进阶教程-JSON操作.pdf

    JSON 的全称是 JavaScript Object Notation,即 JavaScript 对象符号,它是⼀种轻量级、跨平台、跨语⾔的数据交换格式,其设 计意图是把所有事情都⽤设计的字符串来表⽰,这样既⽅便在互联⽹上传递信息,也⽅便⼈进...

    实例详解JSON数据格式及json格式数据域字符串相互转换

    不同的语言中,它被理解为对象(object),记录(record),结构(struct),字典(dictionary),哈希表(hash table),有键列表(keyed list),或者关联数组 (associative array)。 2. 值

    StringtoList和StringtoMap和StringtoObject和StringtoArray

    Json格式的字符串转成List、Array、Map、Object、List&lt;Object&gt;等,就是各种字符串转其他格式的方法.有个封装好的转换方法和一个我自己做的示例

    22-ajax-源代码.rar

    案例2-站内查询。 一、Ajax概述 二、js原生的Ajax技术(了解) 三、Json数据格式(重要...注意:json的key是字符串 jaon的value是Object json的解析: json是js的原生内容,也就意味着js可以直接取出json对象中的数据

    JSON 数据格式详解

    基础结构 JSON建构于两种结构: 1. “名称/值”对的集合(A collection of name/value pairs)。不同的语言中,它被理解为对象...简单地说,JSON 可以将 JavaScript 对象中表示的一组数据转换为字符串,然后就可以

    json-patch-convertor:一个实用程序库,它将Jackson注释的域对象转换为遵循RFC6902(https

    概述该项目旨在提供一种方便的方式来... 如果您想要结果的java.util类,可以在将其转换为字符串之前轻松对其进行操作,则可以使用以下命令: List&lt;Map&gt;&gt; result = ObjectToPatchMap.parseFreshObject(person1);用例2

    python读写json文件的简单实现

    JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。它基于ECMAScript的一个子集。 JSON采用完全独立于语言的文本... json: 用于字符串和python数据类型间进行转换 pickle: 用于python特有的类型和pyth

    JSONBuilder - C#扩展版

    - 支持任意扩展,通过注册自定义类型的转换方法(参看JSONBuilderTest.cs 和 JSONBuilderDelegates.cs)可支持任意类型的json字符串转换 - 支持自定义的包含 public string toJSON() 的对象的输出(忽略大小写) - ...

    Android静默安装常用工具类

    toJson(Map, String&gt; map) map转换为json格式 源码可见MapUtils.java,更多方法及更详细参数介绍可见MapUtils Api Guide。 16、ObjectUtils Object工具类,可用于Object常用操作,如: isEquals(Object actual, ...

    多功能.NET代码自动生成器2.0版(2010年最新修改)

    /// 当前页数据的JSON数据源(JSON格式参考Json转换方法) public string Select_Page(CalendarNotesModel model, string querytype, int PageIndex, int PageSize) 按照指定条件分页查询数据集合,返回JSON数据源,...

    多功能.NET代码自动生成器(含存储过程)

    /// 当前页数据的JSON数据源(JSON格式参考Json转换方法) public string Select_Page(CalendarNotesModel model, string querytype, int PageIndex, int PageSize) 按照指定条件分页查询数据集合,返回JSON数据源,...

    C#基类库(苏飞版)

    app消息格式化类,返加字符串帮助类 ResourceManager C#一个操作Resource的帮助类 ResourceManagerWrapper Resources 操作Resources的帮助类,使用Api的方式 Sample.xml 11.XML操作类 XmlHelper 操作Xml文档的...

    jquery-1.1.3 效率提高800%

    processData(true) 数据类型: Boolean 在默认的情况下,如果data选项传进的数据是一个对象而不是字符串,将会自动地被处理和转换成一个查询字符串,以适应默认的content-type--"application/x-...

    jquery电子文档chm

    将自动转换为请求字符串格式。GET 请求中将附加在 URL 后。查看 processData 选项说明以禁止此自动转换。必须为 Key/Value 格式。如果为数组,jQuery 将自动为不同值对应同一个名称。如 {foo:["bar1", "bar2"]} 转换...

    ZendFramework中文文档

    8.2.2. 修改货币格式 8.2.3. Zend_Currency 的信息方法 8.2.4. 设置新缺省值 8.2.5. 加速 Zend_Currency 8.3. 从前面的版本迁移 8.3.1. 从 1.0.2 到 1.0.3 或更新的迁移 9. Zend_Date 9.1. Introduction ...

Global site tag (gtag.js) - Google Analytics