com.alibaba.fastjson.JSONObject
package com.alibaba.fastjson; import java.util.Date;
import java.util.List; import com.alibaba.fastjson.componet.Grade;
import com.alibaba.fastjson.componet.User;
import com.alibaba.fastjson.serializer.SerializerFeature; /**
* @author Liang
*
* 2017年2月27日
*/
public class JSONObject_ { public static void main(String[] args) {
User lime = new User(1, "lime", 23d);
User oracle = new User(2, "oracle", 25d);
Grade grade = new Grade("铃兰一中", lime, oracle); // 将JavaBean序列化为JSON文本
String limeJson = JSONObject.toJSONString(lime);
// {"id":1,"name":"lime","treasure":23}
String usersJson = JSONObject.toJSONString(grade.getUsers());
// [{"id":1,"name":"lime","treasure":23},{"id":2,"name":"oracle","treasure":25}]
String gradeJson = JSONObject.toJSONString(grade);
// {"name":"铃兰一中","users":[{"id":1,"name":"lime","treasure":23},{"id":2,"name":"oracle","treasure":25}]} // JSONObject 其实就是一个Map。
JSONObject limeParse = JSONObject.parseObject(limeJson);
System.out.println(limeParse);
// {"id":1,"name":"lime","treasure":23}
System.out.println(limeParse.getInteger("id"));
//
System.out.println(limeParse.getIntValue("id"));
//
System.out.println(limeParse.getString("name"));
// lime JSONObject gradeParse = JSONObject.parseObject(gradeJson);
System.out.println(gradeParse);
// {"name":"铃兰一中","users":[{"id":1,"name":"lime","treasure":23},{"id":2,"name":"oracle","treasure":25}]}
System.out.println(gradeParse.get("users"));
// [{"id":1,"name":"lime","treasure":23},{"id":2,"name":"oracle","treasure":25}] // JSONArray 其实就是一个List
List<User> gradeUsersParse = JSONObject.parseArray(gradeParse.get("users").toString(), User.class);
for(User user : gradeUsersParse){
System.out.println(user);
// User [id=1, name=lime, treasure=23.0]
// User [id=2, name=oracle, treasure=25.0]
} // key-value使用单引号
String limeJSON = JSONObject.toJSONString(lime,
SerializerFeature.UseSingleQuotes);
// {'id':1,'name':'lime','treasure':23} // 日期格式化
Date date = new Date();
// 默认格式为yyyy-MM-dd HH:mm:ss
System.out.println(JSON.toJSONString(date,
SerializerFeature.WriteDateUseDateFormat));
//根据自定义格式输出日期
System.out.println(JSON.toJSONStringWithDateFormat(date, "yyyy-MM-dd", SerializerFeature.WriteDateUseDateFormat));
}
}
啦啦啦
com.alibaba.fastjson.JSONObject的更多相关文章
- 探索RequestBody报com.alibaba.fastjson.JSONObject cannot be cast to xxx
今天使用RequestBody接受前端传过来的参数,以前接受字符串数组非常成功,这次把形参改成了List<User>,原本以为顺利接受参数并映射成User的list结构,结果竟然在我取us ...
- 42-字符串到json 的错误 com.alibaba.fastjson.JSONObject cannot be cast to java.lang.String
json: {"updated_at":1551780617,"attr":{"uptime_h":3,"uptime_m&quo ...
- No message body writer has been found for class com.alibaba.fastjson.JSONObject, ContentType: */*
1:当使用 cxf 发布服务时,要求返回值类型为xml,或者json等 @Path("/searchProductByText") @GET @Produces({"ap ...
- net.sf.json.JSONOBJECT.fromObject 与 com.alibaba.fastjson.JSONObject.parseObject
文章待补充,先写写以下知识点好了. NULL值处理之 net.sf.json.JSONObject 和 com.alibaba.fastjson.JSONObject区别 JSON作为一个轻量级的文本 ...
- java后台接收json数据,报错com.alibaba.fastjson.JSONObject cannot be cast to xxx
从前台接收json封装的list数据,在后台接收时一直报错,com.alibaba.fastjson.JSONObject cannot be cast to xxx, 使用这种方式接收可以接收 @R ...
- com.alibaba.fastjson.JSONObject循环给同一对象赋值会出现"$ref":"$[0]"现象问题
1.今天定义了一个JSONObject对象,引用的com.alibaba.fastjson.JSONObject,循环给这个对象赋值出现"$ref":"$[0]" ...
- com.alibaba.fastjson.JSONObject之对象与JSON转换方法
com.alibaba.fastjson.JSONObject时经常会用到它的转换方法,包括Java对象转成JSON串.JSON对象,JSON串转成java对象.JSON对象,JSON对象转换Java ...
- com.alibaba.fastjson.JSONObject;的使用
转: com.alibaba.fastjson.JSONObject;的使用 2018-11-04 23:51:23 mameng1998 阅读数 6404更多 分类专栏: java 1 POM ...
- Java-Class-I:com.alibaba.fastjson.JSONObject
ylbtech-Java-Class-I:com.alibaba.fastjson.JSONObject 1.返回顶部 1.1.import com.alibaba.fastjson.JSON;imp ...
随机推荐
- lvreduce -L 1000M /dev/vg0/lv0 表示最后缩减至多大,不是减少了多大
resize2fs在前 lvextend 在后 将/dev/vg0/lv0缩减到1000M umount /lv/ 取消挂载 [root@desktop4 ~]# e2fsck -f /dev/vg0 ...
- Spring Cloud Sleuth 服务跟踪 将跟踪信息存储到数据库
参见上一篇博客:Spring Cloud Sleuth 服务跟踪 参考:zipkin使用mysql保存数据 主要在跟踪服务上配置: 在数据库创建数据库表:(可不创建,在classpath中添加对应的s ...
- OAuth 授权
- [日志log] 常用log日志记录方式对比和详解
1.现在都有哪些记录日志的方法 A.java.util.logging.Logger - 使用详解 B.log4j - 使用详解 C.SLF4J(simple logging Facade for J ...
- XmlnsDefinition for a Cool Namespace Mapping
In XAML, when you want to reference a CLR type, you have to add a namespace mapping that maps the XM ...
- Some Parameter Interpretation On Using Mininet
MiniNet使用很简单,下面以下面帮助界面截图为例,简单讲述常见的几个命令即可: sudo mn --topo single,3--mac --switch ovsk--controller rem ...
- == equals hashCode 总结比较
在Java中: ==是运算符,用于比较两个变量是否相等. equals,是Objec类的方法,用于比较两个对象是否相等,默认Object类的equals方法是比较两个对象的地址,跟==的结果一样.Ob ...
- 关于Unity中的光照(六)
反射探头 1:镜子金属等具有光滑表面的物体都会反射,而游戏中计算实时反射非常消耗CPU的资源, unity5.0新增了一个反射探头的技术,通过采样点,生成反射Cubemap,然后通过特定的着色器从Cu ...
- 关于1KB病毒的清除
以前中过很多次的1KB病毒,这种病毒来源一般都是U盘,就是去打印店插个U盘,回来插自己电脑发现U盘中毒了. 中毒特征就是根目录下的所有文件夹都变成快捷方式,都只有1KB大小,而根目录下的文件和压缩包不 ...
- 实验三 使用ASP.NET常用服务器控件 总结
这次实验内容是服务器控件的使用,大部分控件都是来自VS2008中的工具箱.使用的时候视图切换到设计或者分析,把工具箱中的目标控件直接拖拽到想要的位置.使用起来非常方便,而且可以通过直接点击控件来对它的 ...