服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - Java教程 - Java 使用json-lib处理JSON详解及实例代码

Java 使用json-lib处理JSON详解及实例代码

2020-08-12 10:44java教程网 Java教程

这篇文章主要介绍了Java 使用json-lib处理JSON详解及实例代码的相关资料,需要的朋友可以参考下

Java 使用json-lib处理JSON详解

【项目环境】

?
1
2
3
4
5
6
<dependency>
  <groupId>net.sf.json-lib</groupId>
  <artifactId>json-lib</artifactId>
  <version>2.4</version>
  <classifier>jdk15</classifier>
</dependency>

1. JSON 数组对象转化为 List 对象;

?
1
2
3
4
5
6
7
8
9
10
11
/**
 * JSON 数组对象转化为 Java 的 List 对象;
 */
private void jsonArrayToList() {
  // JSON 格式的字符串;
  String jsonStr = "[{\"id\":2,\"isDelete\":false,\"lastLogin\":1460081728077,\"lastIp\":\"10.0.0.1\",\"nickName\":\"admin2\",\"userName\":\"admin2\",\"password\":\"password\"},{\"id\":1,\"isDelete\":false,\"lastLogin\":1460081728077,\"lastIp\":\"10.0.0.1\",\"nickName\":\"Shawearn\",\"userName\":\"shawearn\",\"password\":\"password\"}]";
  // 根据 JSON 字符串生成 JSON 数组对象;
  JSONArray jsonArray = JSONArray.fromObject(jsonStr);
  // JSON 数组对象转化为 List<Admin> 对象;
  List<Admin> admins = JSONArray.toList(jsonArray, Admin.class);
}

2. List 转化为 JSON 数组对象;

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
/**
 * List 转化成 JSON 数组对象;
 *
 * @param admins
 */
private void listToJSONArray(List<Admin> admins) {
  // 构建 JSONArray 实例对象;
  JSONArray jsonArray = new JSONArray();
  // 判空
  if (admins != null && admins.size() != 0) {
    // 遍历,将 List 中的对象存入 JSONArray 对象中;
    for (Admin admin : admins) {
      jsonArray.add(admin);
    }
  }
}

3. Java 对象转化为 JSON 对象;

?
1
2
3
4
5
6
7
8
9
10
11
/**
 * Java 对象转化成 JSON 对象;
 *
 * @param admin
 */
private void entityToJson(Admin admin) {
  // 新建 JSONObject 的实例化对象;
  JSONObject jsonObject = new JSONObject();
  // 将 admin 对象存入 jsonObject;
  jsonObject.element("admin", admin);
}

4.  Admin.java

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
package com.shawearn.model;
public class Admin {
  private Integer id;
  private String userName;
  private String password;
  private Boolean isDelete;
  private String nickName;
  private String lastIp;
  private Long lastLogin;
   
  /**
   * 省略相应 get/set 方法;
   */
}

 感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

延伸 · 阅读

精彩推荐