原文章:http://blog.csdn.net/glarystar/article/details/6654494

原作者:张星的博客

maven配置:

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

java代码:

import java.util.ArrayList;
import java.util.List; import com.alibaba.fastjson.JSON; public class TestFastJson { /**
* java对象转json字符串
*/
public void test1() {
Group group = new Group();
group.setId(0L);
group.setName("admin"); User guestUser = new User();
guestUser.setId(2L);
guestUser.setName("guest"); User rootUser = new User();
rootUser.setId(3L);
rootUser.setName("root"); group.getUsers().add(guestUser);
group.getUsers().add(rootUser); // java对象转json字符串
String jsonString = JSON.toJSONString(group);
System.out.println(jsonString);
} /**
* json字符串转java对象
*/
public void test2() {
String json = "{\"id\":0,\"name\":\"admin\","
+ "\"users\":[{\"id\":2,\"name\":\"guest\"},{\"id\":3,\"name\":\"root\"}]}"; // json字符串转java对象
Group group = JSON.parseObject(json, Group.class);
System.out.println(group.getUsers().get(0).getName());
} /**
* 测试main
*/
public static void main(String[] args) {
TestFastJson test = new TestFastJson();
test.test2();
}
} class User { private Long id; private String name; /**
* 构造函数
*/
public User() {
super();
} // getters/setters(略) } class Group { private Long id; private String name; private List<User> users = new ArrayList<User>(); /**
* 构造函数
*/
public Group() {
super();
} // getters/setters(略)
}

com.alibaba.fastjson.JSON的一些常用方法简介:

        // 把JSON文本parse为JSONObject或者JSONArray
public static final Object parse(String text); // 把JSON文本parse成JSONObject
public static final JSONObject parseObject(String text); // 把JSON文本parse为JavaBean
public static final <T> T parseObject(String text, Class<T> clazz); // 把JSON文本parse成JSONArray
public static final JSONArray parseArray(String text); //把JSON文本parse成JavaBean集合
public static final <T> List<T> parseArray(String text, Class<T> clazz); // 将JavaBean序列化为JSON文本
public static final String toJSONString(Object object); // 将JavaBean序列化为带格式的JSON文本
public static final String toJSONString(Object object, boolean prettyFormat); //将JavaBean转换为JSONObject或者JSONArray。
public static final Object toJSON(Object javaObject);

FastJson-fastjson的简单使用(alibaba)的更多相关文章

  1. 解决使用Redis时配置 fastjson反序列化报错 com.alibaba.fastjson.JSONException: autoType is not support

    1.问题描述 在使用redis时,配置自定义序列化redisTemplate为FastJsonRedisSerializer .  1 /** 2 * 自定义redis序列化器 3 */ 4 @Sup ...

  2. FastJson的简单使用(alibaba)

    原文章:http://blog.csdn.net/glarystar/article/details/6654494 原作者:张星的博客 maven配置: <dependency> < ...

  3. 关于alibaba.fastjson的一些简单使用

    // 把JSON文本parse为JSONObject或者JSONArray public static final Object parse(String text); // 把JSON文本parse ...

  4. fastjson 错误解决方案详情 com.alibaba.fastjson.JSONException: syntax error, expect {, actual EOF, pos 1410

    原因: 前端传递的数组过于复杂,倒是出现这种问题,前端采用vue axios,发送请求,后端java接收代码,实现前后端分离 后端就收fastjson接收json,进行业务处理,后端Controlle ...

  5. fastJson解析报错:com.alibaba.fastjson.JSONException: can't create non-static inner class instance.

    原因: 如果出现类嵌套类的情况,需要将被嵌套的那个类设置为static. 比如: public class AA { // 相关属性 public class BB {//会报错 // 相关属性 } ...

  6. 使用Redis 配置替换fastjson 反序列化报错 com.alibaba.fastjson.JSONException: autoType is not support

    新建的GenericFastJson2JsonRedisSerializer里面添加白名 添加: static {        ParserConfig.getGlobalInstance().ad ...

  7. [fastjson] - fastjson中 JSONObject 和 JSONArray

    /** * 对jsonObject对象进行key的获取 * @param jsonObject */ public ArrayList<String> jsonKeyRecursion(J ...

  8. 全解史上最快的JOSN解析库 - alibaba Fastjson

    JSON,全称:JavaScript Object Notation,作为一个常见的轻量级的数据交换格式,应该在一个程序员的开发生涯中是常接触的.简洁和清晰的层次结构使得 JSON 成为理想的数据交换 ...

  9. com.alibaba的fastjson简介

    fastjson简介 Fastjson是一个Java语言编写的高性能功能完善的JSON库.它采用一种“假定有序快速匹配”的算法,把JSON Parse的性能提升到极致,是目前Java语言中最快的JSO ...

随机推荐

  1. TopComponent设置某个控件焦点

    仅仅在 @Override public void componentOpened() { syncBtn.requestFocus(); } 中指定还不够,还需要重载 @Override publi ...

  2. Reusable async validation for WPF with Prism 5

    WPF has supported validation since the first release in .NET 3.0. That support is built into the bin ...

  3. Python判断操作系统类型

    代码: import platform def TestPlatform(): print ("----------Operation System--------------------- ...

  4. 【转】【Python】Python多进程与多线程

    1.1 multiprocessing multiprocessing是多进程模块,多进程提供了任务并发性,能充分利用多核处理器.避免了GIL(全局解释锁)对资源的影响. 有以下常用类: 类 描述 P ...

  5. struts2系列(二):struts2参数传递错误、struts2的输入错误验证

    一.struts2参数传递错误 1. 基本数据类型的传递最好使用包装类,原因是struts 2.1之后使用基本数据类型如果参数为空会报错2. 日期参数的传递最好定义一个区域的属性(定义locale), ...

  6. HDU 3455 Leap Frog(线性DP)

    Problem Description Jack and Jill play a game called "Leap Frog" in which they alternate t ...

  7. Websphere设置JVM时区解决程序、日志时间快8小时问题

    原文链接:http://www.itpub.net/thread-1204714-1-1.html 相信很多使用Websphere的朋友会经常在Windows操作系统中遇到程序时间快8小时的问题 如果 ...

  8. S 参数说明

     微波系统主要研究信号和能量两大问题:信号问题主要是研究幅频和相频特性:能量问题主要是研究能量如何有效地传输.微波系统是分布参数电路,必须采用场分析法,但场分析法过于复杂,因此需要一种简化的分析方法. ...

  9. 【Access-Control-Allow-Origin】跨域问题

    [前言] 在实际项目中,可能是多个项目共同完成某个功能,他们之间需要实现数据的交互.这样就会需要有跨域的问题. 比如,发布在不同电脑上的不同项目之间,用不同语言开发的项目之间…… [JSONP] 当使 ...

  10. windows下winscp连接ubuntu

    在ubuntu下安装ssh: sudo apt-get install openssh-server 即可解决.