Введение в Orgjson

JavaJavaBeginner

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

В этом практическом занятии вы научитесь работать с JSON в Java с использованием библиотеки org.json. Мы рассмотрим классы и методы, предоставляемые библиотекой, включая создание JSON-объектов и массивов, преобразование JSON-данных в другие форматы и обработку JSON-исключений.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL java(("Java")) -.-> java/BasicSyntaxGroup(["Basic Syntax"]) java(("Java")) -.-> java/StringManipulationGroup(["String Manipulation"]) java(("Java")) -.-> java/DataStructuresGroup(["Data Structures"]) java(("Java")) -.-> java/ObjectOrientedandAdvancedConceptsGroup(["Object-Oriented and Advanced Concepts"]) java(("Java")) -.-> java/FileandIOManagementGroup(["File and I/O Management"]) java(("Java")) -.-> java/ConcurrentandNetworkProgrammingGroup(["Concurrent and Network Programming"]) java(("Java")) -.-> java/SystemandDataProcessingGroup(["System and Data Processing"]) java/BasicSyntaxGroup -.-> java/output("Output") java/StringManipulationGroup -.-> java/strings("Strings") java/DataStructuresGroup -.-> java/collections_methods("Collections Methods") java/ObjectOrientedandAdvancedConceptsGroup -.-> java/classes_objects("Classes/Objects") java/ObjectOrientedandAdvancedConceptsGroup -.-> java/exceptions("Exceptions") java/FileandIOManagementGroup -.-> java/io("IO") java/ConcurrentandNetworkProgrammingGroup -.-> java/working("Working") java/SystemandDataProcessingGroup -.-> java/string_methods("String Methods") subgraph Lab Skills java/output -.-> lab-117463{{"Введение в Orgjson"}} java/strings -.-> lab-117463{{"Введение в Orgjson"}} java/collections_methods -.-> lab-117463{{"Введение в Orgjson"}} java/classes_objects -.-> lab-117463{{"Введение в Orgjson"}} java/exceptions -.-> lab-117463{{"Введение в Orgjson"}} java/io -.-> lab-117463{{"Введение в Orgjson"}} java/working -.-> lab-117463{{"Введение в Orgjson"}} java/string_methods -.-> lab-117463{{"Введение в Orgjson"}} end

Создание JSONObject

JSONObject используется для хранения пар ключ-значение. Вот пример того, как создать JSONObject:

import org.json.JSONObject;

public class Main {
  public static void main(String[] args) {
    JSONObject jo = new JSONObject();
    jo.put("name", "John");
    jo.put("age", 25);
    System.out.println(jo.toString());
  }
}

Для запуска кода выполните следующую команду в терминале.

javac Main.java && java Main

Вышеприведенный код создаст JSONObject с двумя парами ключ-значение: name и age, а затем выведет его в консоль.

Создание JSONArray

JSONArray - это упорядоченная коллекция значений. Вот пример того, как создать JSONArray:

import org.json.JSONArray;

public class Main {
  public static void main(String[] args) {
    JSONArray ja = new JSONArray();
    ja.put(10);
    ja.put("A string");
    System.out.println(ja.toString());
  }
}

Для запуска кода выполните следующую команду в терминале.

javac Main.java && java Main

Вышеприведенный код создаст JSONArray с двумя значениями: 10 и "A string", а затем выведет его в консоль.

Преобразование JSON в строку

Для преобразования JSONObject или JSONArray в строку используйте метод toString(). Вот пример:

import org.json.JSONObject;

public class Main {
  public static void main(String[] args) {
    JSONObject jo = new JSONObject();
    jo.put("name", "John");
    jo.put("age", 25);

    String jsonString = jo.toString();
    System.out.println(jsonString);
  }
}

Для запуска кода выполните следующую команду в терминале.

javac Main.java && java Main

Вышеприведенный код создаст JSONObject с двумя парами ключ-значение, преобразует его в строку и затем выводит строку в консоль.

Преобразование JSON в Java-объекты

Библиотека org.json предоставляет удобные методы для преобразования JSON-данных в Java-объекты. Например, вы можете использовать методы get класса JSONObject для получения значений конкретных ключей в виде Java-объектов. Вот пример:

import org.json.JSONObject;

public class Main {
  public static void main(String[] args) {
    JSONObject jo = new JSONObject();
    jo.put("name", "John");
    jo.put("age", 25);

    String name = jo.getString("name");
    int age = jo.getInt("age");

    System.out.println("Name: " + name);
    System.out.println("Age: " + age);
  }
}

Для запуска кода выполните следующую команду в терминале.

javac Main.java && java Main

Вышеприведенный код создаст JSONObject с двумя парами ключ-значение, получит значения ключей "name" и "age" и затем выведет их в консоль.

Создание JSONObject из строки

Если у вас есть допустимая JSON-строка, вы можете использовать ее для создания JSONObject. Вот пример:

import org.json.JSONObject;

public class Main {
  public static void main(String[] args) {
    String jsonString = "{\"name\":\"John\",\"age\":25}";

    JSONObject jo = new JSONObject(jsonString);
    System.out.println(jo.toString());
  }
}

Для запуска кода выполните следующую команду в терминале.

javac Main.java && java Main

Вышеприведенный код создаст JSONObject из JSON-строки и затем выведет его в консоль.

Создание JSONArray из строки

Если у вас есть допустимая JSON-строка, вы можете использовать ее для создания JSONArray. Вот пример:

import org.json.JSONArray;

public class Main {
  public static void main(String[] args) {
    String jsonString = "[10,\"A string\"]";

    JSONArray ja = new JSONArray(jsonString);
    System.out.println(ja.toString());
  }
}

Для запуска кода выполните следующую команду в терминале.

javac Main.java && java Main

Вышеприведенный код создаст JSONArray из JSON-строки и затем выведет его в консоль.

Обработка JSON-исключений

При работе с org.json вам нужно обрабатывать JSONException. Эти исключения возникают, когда вы пытаетесь выполнить недопустимую операцию с JSON-объектом или массивом. Вот пример:

import org.json.JSONObject;
import org.json.JSONException;

public class Main {
  public static void main(String[] args) {
    try {
      JSONObject jo = new JSONObject();
      jo.put("name", "John");
      System.out.println(jo.getInt("name"));
    } catch (JSONException e) {
      System.out.println("JSONException: " + e.getMessage());
    }
  }
}

Для запуска кода выполните следующую команду в терминале.

javac Main.java && java Main

Вышеприведенный код создаст JSONObject и попытается получить целочисленное значение для ключа "name", который является String. Это вызовет JSONException, которое будет поймано и выведено в консоль.

Резюме

В этом практическом занятии вы узнали, как работать с JSON в Java с использованием библиотеки org.json. Вы узнали, как создавать JSON-объекты и массивы, как преобразовывать JSON-данные в другие форматы и как обрабатывать JSON-исключения. Также вы узнали, как импортировать библиотеку org.json и преобразовывать JSON-данные в Java-объекты.