当前位置:首页 > 开发 > 编程语言 > Json > 正文

FastJson 操作JSON字符串

发表于: 2012-07-08   作者:晨必须的   来源:转载   浏览:
摘要: 一、javabean反射工具类,可以在控制台中输出一个对象的属性值列表 public class ReflectionUtil { public static boolean isShow = true; //是否启用   /** * 获得一个对象的属性值 * @author:qiuchen * @createTime:2012-7-4 *

一、javabean反射工具类,可以在控制台中输出一个对象的属性值列表

public class ReflectionUtil {

public static boolean isShow = true; //是否启用

 

/**

* 获得一个对象的属性值

* @author:qiuchen

* @createTime:2012-7-4

* @param obj 目标对象

*/

@SuppressWarnings("unchecked")

public static void getFieldValue(Object obj){

if (isShow) getFieldValue(obj, isShow);

}

/**

* 获得一个对象的属性值

* @author:qiuchen

* @createTime:2012-7-4

* @param obj 目标对象

*/

@SuppressWarnings("unchecked")

private static void getFieldValue(Object obj,boolean isShow){

Class cls = obj.getClass();

        Method[] methods = cls.getDeclaredMethods();//获得类的方法集合

        StringBuffer buffer = new StringBuffer();

        try {

        for (Method method : methods) {

if(method!=null && method.getName().startsWith("get")){

Object value = method.invoke(obj, null);

value = method.getName().substring(3)+":"+value+","; 

buffer.append(value);

}

}

        } catch (Exception e) {

        e.printStackTrace();

        }

        System.out.println(cls.toString()+"["+buffer.toString()+"]");

}

public static void main(String[] args) {

}

}

 

二、F盘的属性文件内容

### fastjs### fastjson操作JSON ###

json1={"name":"cena","age":"35","sex":"男"}

json2=[{"name":"cena","age":"35","sex":"男"},{"name":"hhh","age":"37","sex":"男"},{"name":"ever","age":"25","sex":"女"}]

json3={"name":"cena","age":"35","sex":"男","hobbies":[{"name":"踢球","hYear":"2年"},{"":"","":""}]}

 

三、FastJson工具类

import java.util.ArrayList;

import java.util.List;

import java.util.Properties;

import com.alibaba.fastjson.JSON;

import com.alibaba.fastjson.JSONArray;

import com.alibaba.fastjson.JSONObject;

import com.ttpod.slt.model.Hobby;

import com.ttpod.slt.model.User;

 

public class JsonUtil {

/**

* 从json字符串中解析出java对象

* @author:qiuchen

* @createTime:2012-7-8

* @param jsonStr json格式字符串

* @param clazz java类

* @return clazz的实例

*/

public static Object parseJavaObject(String jsonStr,Class clazz){

return JSON.toJavaObject(JSON.parseObject(jsonStr), clazz);

}

/**

* 测试方法

* @author:qiuchen

* @createTime:2012-7-8

* @param args

*/

public static void main(String[] args) {

//0.0加载属性文件(所有json字符串从文件中读取)

Properties pp = PropertiesUtil.getProperties("f:/properties.properties");

//0.1简单格式的json字符串

String json1 = pp.getProperty("json1"); 

System.out.println(json1);

User user = (User)JsonUtil.parseJavaObject(json1,User.class);

ReflectionUtil.getFieldValue(user);

//0.2数组形式的json字符串

String json2 = pp.getProperty("json2"); 

System.out.println(json2);

JSONArray array = JSONArray.parseArray(json2);

List<User> userList = new ArrayList<User>();

for(int i = 0; i < array.size();i++){

JSONObject jobj = (JSONObject)array.get(i);

User user2 = JSON.toJavaObject(jobj,User.class);

userList.add(user2);

}

for(User u : userList){

ReflectionUtil.getFieldValue(u);

}

//0.3复杂数组形式的json字符串

String json3 = pp.getProperty("json3");

System.out.println(json3);

User user3 = (User)JsonUtil.parseJavaObject(json3, User.class);

ReflectionUtil.getFieldValue(user3);

for(Hobby h : user3.getHobbies()){

ReflectionUtil.getFieldValue(h);

}

}

}

FastJson 操作JSON字符串

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

编辑推荐
一、Fastjson API入口类是com.alibaba.fastjson.JSON,常用的序列化操作都可以在JSON类上的静态方法
一、阿里巴巴FastJson是一个Json处理工具包,包括“序列化”和“反序列化”两部分,它具备如下特征
格式化类: class JsonFormat{ private StringBuffer buffer=new StringBuffer(); //格式化json pri
 本文讲解2点: 1. fastjson生成和解析json数据 (举例:4种常用类型:JavaBean,List<JavaBean
本文讲解2点: 1. fastjson生成和解析json数据 (举例:4种常用类型:JavaBean,List<JavaBean>,
JSON数据格式简洁,用于数据的持久化和对象传输很实用。最近在做一个Razor代码生成器,需要把数据库
很小的项目中用了一下jfinal无奈不支持fastjson,传说中jfinal插件那么多,但是搜遍了地球也找不到
声明: 1、本帖只提供代码,不深入讲解原理。如果读者想要深入了解,那就不要在这个帖子上浪费时间
首先看看2个简单的fastjson的使用 例子一 package ivyy.taobao.com.domain.json; import java.util.
转载请注明出处:http://blog.csdn.net/yegongheng/article/details/38295227 前言 上一篇文章我们
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号