fastjsonfastjson和gson的区别
fastjson 时间:2021-07-30 阅读:(
)
怎么用fastJson解析这个比较复杂的json,请帮忙
最简单就是 Object t=JSON.parse("jsonStr");
如果你要生成模型就
TModel tModel=new TModel();
tModel=JSON.parseObject("jsonstr", TModel.class);复杂json怎么使用fastjson一次性提取出来
JSON数据之使用Fastjson进行解析(一)
据说FastJson是目前最快的解析Json数据的库,而且是国人开发出来的开源库。
顶一下,付上官方网址:h//wiki/pages/viewpage.action?pageId=2424946
要使用Fastjson,首先需要下载相对应的jar文件,在官网即可下载。
附上初学的第一个例子,多多指教:
复制代码
{
"statuses":[
{
"id": 912345678901,
"text": "How do I stream JSON in Java?",
"geo": null,
"user": {
"name": "json_newb",
"followers_count": 41
}
},
{
"id": 777777777888,
"text": "dfngsdnglnsldfnsl",
"geo": null,
"user": {
"name": "dsfgpd",
"followers_count": 24
}
}
]
}
复制代码
AllBean的Bean类:
复制代码
.lee.JsonToBean;
public class AllBean {
private long id;
private String text;
private String geo;
private UserBean userBean;
public long getId() {
return id;
}
public void setId(long id) {
this.id = id;
}
public String getText() {
return text;
}
public void setText(String text) {
this.text = text;
}
public String getGeo() {
return geo;
}
public void setGeo(String geo) {
this.geo = geo;
}
public UserBean getUserBean() {
return userBean;
}
public void setUserBean(UserBean userBean) {
this.userBean = userBean;
}
}
复制代码
UserBean的Bean类:
复制代码
.lee.JsonToBean;
public class UserBean {
private String name;
private int followers_count;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getFollowers_count() {
return followers_count;
}
public void setFollowers_count(int followers_count) {
this.followers_count = followers_count;
}
}
复制代码
解析类JsonBean:
复制代码
.lee.JsonToBean;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.util.List;
import javax.swing.text.BadLocationException;
import javax.swing.text.DefaultStyledDocument;
import javax.swing.text.rtf.RTFEditorKit;
.alibaba.fastjson.JSON;
.alibaba.fastjson.JSONArray;
.alibaba.fastjson.JSONObject;
/**
* {
"statuses":[
{
"id": 912345678901,
"text": "How do I stream JSON in Java?",
"geo": null,
"user": {
"name": "json_newb",
"followers_count": 41
}
},
{
"id": 777777777888,
"text": "dfngsdnglnsldfnsl",
"geo": null,
"user": {
"name": "dsfgpd",
"followers_count": 24
}
}
]
}
* */
public class JsonBean {
RTFEditorKit rtf;
DefaultStyledDocument dsd;
String text;
public static void main(String[] args) {
JsonBean bean = new JsonBean();
// 把字符串转为Json对象,这是因为我的json数据首先是json对象
JSONObject jobj = JSON.parseObject(bean.readRtf(new File("json.rtf")));
// 然后是jsonArray,可以根据我的json数据知道
JSONArray arr = jobj.getJSONArray("statuses");
// 根据Bean类的到每一个json数组的项
List listBeans = JSON.parseArray(arr.toString(), AllBean.class);
// 遍历
for(AllBean bean_ : listBeans){
// 我这个demo的json数据获得第一层的数据
System.out.println(bean_.getText());
System.out.println(bean_.getId());
// 我这个demo的json数据获得第二层的数据
System.out.println(bean_.getUserBean().getFollowers_count());
}
}
// 因为我把json数据放进rtf文件,这是读取rtf文件的json数据,转化为字符串
public String readRtf(File in) {
rtf=new RTFEditorKit();
dsd=new DefaultStyledDocument();
try {
rtf.read(new FileInputStream(in), dsd, 0);
text = new String(dsd.getText(0, dsd.getLength()));
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (BadLocationException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return text;
}
}fastjson和gson的区别
展开全部
gson和fastjson我都在项目使用过了,相比较而言,gson对字段的处理更细腻一些,有版本号的概念,相对更灵活,值得注意是,gson直接入侵字段,则不是setget方法;fastjson速度更快,但字段的处理不够灵活,特别是处理同一个Javabean的时候,
国外商家提供Windows系统的并不常见,CheapWindowsVPS 此次提供的 2 款 VPS 促销套餐,提供 5 折永久优惠码,优惠后月付 4.5 美元起,价格还是挺诱人的,VPS 不限流量,接入 1Gbps 带宽,8 个机房皆可选,其中洛杉矶机房还提供亚洲优化网络供选择,操作系统有 Windows 10 专业版、2012 R2、2016、Linux等。Cheap Windows VPS是...
greencloudvps怎么样?greencloudvps是一家国外主机商,VPS数据中心多,之前已经介绍过多次了。现在有几款10Gbps带宽的特价KVM VPS,Ryzen 3950x处理器,NVMe硬盘,性价比高。支持Paypal、支付宝、微信付款。GreenCloudVPS:新加坡/美国/荷兰vps,1核@Ryzen 3950x/1GB内存/30GB NVMe空间/1TB流量/10Gbps...
EdgeNat 商家在之前也有分享过几次活动,主要提供香港和韩国的VPS主机,分别在沙田和首尔LG机房,服务器均为自营硬件,电信CN2线路,移动联通BGP直连,其中VPS主机基于KVM架构,宿主机采用四路E5处理器、raid10+BBU固态硬盘!最高可以提供500Gbps DDoS防御。这次开年活动中有提供七折优惠的韩国独立服务器,原生IP地址CN2线路。第一、优惠券活动EdgeNat优惠码(限月...
fastjson为你推荐
360杀毒在线安装360在线杀毒怎么弄office软件包office软件包括哪几个部分垃圾文件清理bat一键清理系统垃圾文件.bat 的原理美国大选投票实时数据美国总统大选选票如何统计淘气鸟乌儿很淘气,飞来飞去,蹦蹦跳跳,请你用“一会儿…一会儿…一会儿…”写写鸟儿?百度创业史简论《创业史》的思想内容.艺术手法百度创业史百度的创始人是谁印象城市游戏论坛游聚游戏平台如何使用?客服系统方案客户服务系统的设计与实现的开题报告创业好项目论坛现在挣钱太难了、大家有什么好项目
万网虚拟主机 yaokan永久域名经常更换 高防直连vps 阿里云搜索 外贸主机 softbank官网 ntfs格式分区 国外免费asp空间 银盘服务是什么 万网空间管理 shuang12 英雄联盟台服官网 中国联通宽带测速 创速 netvigator 空间排行榜 ncp 服务器操作系统 以下 遨游论坛 更多