JAVA编写JSON常用的三种方法

Szx • 2019 年 11 月 15 日

1.jsonlib需要引入的包也多,代码也相对多一些。

2.Gson:谷歌的

3.FastJson:阿里巴巴的,这几个也是性能最好的一个。(推荐)

jsonlib类Jsonlib:package json

import java.util.ArrayList;

import java.util.List;

import net.sf.json.JSONArray;

import user.User;

public class Jsonlib {

public static void main(String[] args) {

User user1 = new User();

user1.setUsername("111");

user1.setPassword("111");

User user2 = new User();

user2.setUsername("222");

user2.setPassword("222");

List lists = new ArrayList();

lists.add(user1);

lists.add(user2);

JSONArray fromObject1 = JSONArray.fromObject(user1);

JSONArray fromObject2 = JSONArray.fromObject(lists);

String str1 = fromObject1.toString();

String str2 = fromObject2.toString();

System.out.println(str1);

//打印结果

//[{"password":"111","username":"111"}]

System.out.println(str2);

//打印结果

//[{"password":"111","username":"111"},{"password":"222","username":"222"}]

}

}

jar包

Gson:package json;

import java.util.ArrayList;

import java.util.List;

import com.google.gson.Gson;

import user.User;

public class Gson_a {

public static void main(String[] args) {

User user1 = new User();

user1.setUsername("111");

user1.setPassword("111");

User user2 = new User();

user2.setUsername("222");

user2.setPassword("222");

List lists = new ArrayList();

lists.add(user1);

lists.add(user2);

Gson gson = new Gson();

String json1 = gson.toJson(user1);

System.out.println(json1);

//打印结果

//{"username":"111","password":"111"}

String json2 = gson.toJson(lists);

System.out.println(json2);

//打印结果

//[{"username":"111","password":"111"},{"username":"222","password":"222"}]

}

}

推荐使用FastJson:

pom依赖

com.alibaba

fastjson

1.2.68

FastJsonTestimport java.util.ArrayList;

import java.util.List;

import com.alibaba.fastjson.JSON;

import user.User;

public class FastJson {

public static void main(String[] args) {

User user1 = new User();

user1.setUsername("111");

user1.setPassword("111");

//1、单个对象转换成json

String jsonString = JSON.toJSONString(user1);

System.out.println(jsonString);

//打印结果

//{"password":"111","username":"111"}

User user2 = new User();

user2.setUsername("222");

user2.setPassword("222");

List lists = new ArrayList();

lists.add(user1);

lists.add(user2);

String jsonString2 = JSON.toJSONString(lists);

System.out.println(jsonString2);

//打印结果

//[{"password":"111","username":"111"},{"password":"222","username":"222"}]

}

}

java json的使用方法_JAVA编写JSON常用的三种方法相关推荐

  1. java中三种方法_Java文件I/O的三种方法

    Java文件I/O的三种方法 RandomAccessFile是不属于InputStream和OutputStream类系的.实际上,除了实现DataInput和DataOutput接口之外(Data ...

  2. java 终止方法_Java中终止线程的三种方法

    Java中终止线程的三种方法 Thread.stop, Thread.suspend, Thread.resume 和Runtime.runFinalizersOnExit 这些终止线程运行的方法已经 ...

  3. python下载方法-python实现下载文件的三种方法_python

    本篇文章主要介绍了python实现下载文件的三种方法,最常用的方法就是通过Http利用urllib或者urllib2模块还有requests,有兴趣的可以了解一下. Python开发中时长遇到要下载文 ...

  4. 统计内表行数常用的三种方法

    以下是统计内表行数常用的三种方法, 如下:   1.LOOP AT it_itab.    g_lines2 = g_lines2 + 1.    ENDLOOP.    该方法是通过循环内部表自己累 ...

  5. java 不知道类名_Java 中获取类名的三种方法,你知道几种?

    之前我们分享过Java高级篇--深入浅出Java类加载机制这篇文章,今天来带你了解获取类名的三种方法. 获取类名的方法 Java 中获取类名的方式主要有以下三种. getName() 返回的是虚拟机里 ...

  6. java当前时间_java 获取当前时间的三种方法

    总结java里面关于获取当前时间的一些方法 System.currentTimeMillis() 获取标准时间可以通过System.currentTimeMillis()方法获取,此方法不受时区影响, ...

  7. java 取名字_Java 中获取类名的三种方法,你知道几种?

    之前我们分享过Java高级篇--深入浅出Java类加载机制这篇文章,今天来带你了解获取类名的三种方法. 获取类名的方法 Java 中获取类名的方式主要有以下三种. getName()返回的是虚拟机里面 ...

  8. android写入文件方法,Android 追加写入文件的三种方法

    一.使用FileOutputStream 使用FileOutputStream,在构造FileOutputStream时,把第二个参数设为true public static void method1 ...

  9. python网页爬取方法_Python爬取网页的三种方法

    # Python爬取网页的三种方法之一:  使用urllib或者urllib2模块的getparam方法 import urllib fopen1 = urllib.urlopen('http://w ...

最新文章

  1. 解决在SQL Server 2000的存储过程不能调试
  2. 工业机器人原来可以这么酷,马斯克和中国美的都对它青睐有加
  3. BCH的硬分叉升级,谱写其在币圈稳扎稳打的成功逆袭史
  4. gogs只支持mysql5.7_Gogs 搭建教程
  5. HDU2021 发工资咯
  6. ExecutorCompletionService原理具体解释
  7. 线性回归与梯度下降法——原理与实现
  8. 牛客 - 求函数(线段树+区间合并/线段树+矩阵维护)
  9. Mac OS使用技巧之十三:Finder中标记的使用
  10. java程序性能优化_怎么做JAVA程序性能优化
  11. 等待队列设备[置顶] Linux设备驱动,等待队列
  12. html英文字体汇总,笔记 CSS常用中文字体英文名称对照表
  13. Android的Task和Activity相关
  14. 数值方法:多项式插值
  15. 基于JAVA WEB的网上书店的设计与实现
  16. WindowsX64下tftp的安装
  17. Looksery Cup 2015 A. Face Detection
  18. 使用pyqt的第一个程序--北邮人IPTV客户端
  19. 利用原生js实现随机点名
  20. 【译文】四十二种谬误(二)

热门文章

  1. mysql存储过程中文乱码_mysql存储过程碰到中文乱码问题
  2. JS / 闭包的理解
  3. 密码学 / PKI 体系概述
  4. Ubuntu20.04 安装VMware Tools
  5. nvr服务器系统,【64路IPC网络存储服务器(WNVR)】 - 太平洋安防网
  6. 【51nod2026】Gcd and Lcm(杜教筛)
  7. 可变与不可变数据类型详解
  8. oracle数据库动态拼接查询条件解决方案
  9. Noip 2013 练习
  10. python--数据类型bytes