- JSON.simple – Read and Write JSON
- Кофе-брейк #175. Как мы можем прочитать файл JSON в Java? Что такое Java Development Kit (JDK)?
- Чтение файла JSON в Java
- Синтаксис
- Особенности JSON
- Типы данных
- JSON в Java
- JSON-объекты
- JSON-массивы
- Простая программа для JSON на Java
- Чтение файла JSON в Java
- Что такое Java Development Kit (JDK)?
- Самые популярные JDK
- Скомпилируйте и запустите код Java с помощью JDK
- Компонент Jar
- How to Read JSON from a file using Jackson
- You might also like.
JSON.simple – Read and Write JSON
JSON.simple is a lightweight JSON processing library that can be used to read and write JSON files and strings. The encoded/decoded JSON will be in full compliance with JSON specification (RFC4627).
JSON.simple library is pretty old and has not been updated since march, 2012. Google GSON library is a good option for reading and writing JSON.
In this Java JSON tutorial, we will first see a quick example of writing to a JSON file and then we will read JSON from the file.
- Full compliance with JSON specification (RFC4627).
- Supports encode, decode/parse and escape JSON.
- Easy to use by reusing Map and List interfaces.
- Supports streaming output of JSON text.
- High performance.
- No dependency on external libraries.
Update pom.xml with json-simple maven dependency.
com.googlecode.json-simple json-simple 1.1.1
To write JSON test into the file, we will be working with mainly two classes:
- JSONArray : To write data in json arrays. Use its add() method to add objects of type JSONObject .
- JSONObject : To write json objects. Use it’s put() method to populate fields.
After populating the above objects, use FileWriter instance to write the JSON file.
package com.howtodoinjava.demo.jsonsimple; import java.io.FileWriter; import java.io.IOException; import org.json.simple.JSONArray; import org.json.simple.JSONObject; public class WriteJSONExample < @SuppressWarnings("unchecked") public static void main( String[] args ) < //First Employee JSONObject employeeDetails = new JSONObject(); employeeDetails.put("firstName", "Lokesh"); employeeDetails.put("lastName", "Gupta"); employeeDetails.put("website", "howtodoinjava.com"); JSONObject employeeObject = new JSONObject(); employeeObject.put("employee", employeeDetails); //Second Employee JSONObject employeeDetails2 = new JSONObject(); employeeDetails2.put("firstName", "Brian"); employeeDetails2.put("lastName", "Schultz"); employeeDetails2.put("website", "example.com"); JSONObject employeeObject2 = new JSONObject(); employeeObject2.put("employee", employeeDetails2); //Add employees to list JSONArray employeeList = new JSONArray(); employeeList.add(employeeObject); employeeList.add(employeeObject2); //Write JSON file try (FileWriter file = new FileWriter("employees.json")) < //We can write any JSONArray or JSONObject instance to the file file.write(employeeList.toJSONString()); file.flush(); >catch (IOException e) < e.printStackTrace(); >> >
To read JSON from file, we will use the JSON file we created in the previous example.
- First of all, we will create JSONParser instance to parse JSON file.
- Use FileReader to read JSON file and pass it to parser.
- Start reading the JSON objects one by one, based on their type i.e. JSONArray and JSONObject .
package com.howtodoinjava.demo.jsonsimple; import java.io.FileNotFoundException; import java.io.FileReader; import java.io.IOException; import org.json.simple.JSONArray; import org.json.simple.JSONObject; import org.json.simple.parser.JSONParser; import org.json.simple.parser.ParseException; public class ReadJSONExample < @SuppressWarnings("unchecked") public static void main(String[] args) < //JSON parser object to parse read file JSONParser jsonParser = new JSONParser(); try (FileReader reader = new FileReader("employees.json")) < //Read JSON file Object obj = jsonParser.parse(reader); JSONArray employeeList = (JSONArray) obj; System.out.println(employeeList); //Iterate over employee array employeeList.forEach( emp ->parseEmployeeObject( (JSONObject) emp ) ); > catch (FileNotFoundException e) < e.printStackTrace(); >catch (IOException e) < e.printStackTrace(); >catch (ParseException e) < e.printStackTrace(); >> private static void parseEmployeeObject(JSONObject employee) < //Get employee object within list JSONObject employeeObject = (JSONObject) employee.get("employee"); //Get employee first name String firstName = (String) employeeObject.get("firstName"); System.out.println(firstName); //Get employee last name String lastName = (String) employeeObject.get("lastName"); System.out.println(lastName); //Get employee website name String website = (String) employeeObject.get("website"); System.out.println(website); >>
[ >, > ] Lokesh Gupta howtodoinjava.com Brian Schultz example.com
Кофе-брейк #175. Как мы можем прочитать файл JSON в Java? Что такое Java Development Kit (JDK)?
Источник: DZone JSON — это простой формат для хранения и отправки данных на веб-страницу. Обычно он используется в JavaScript, но сегодня мы узнаем, как с ним работать в Java.
Чтение файла JSON в Java
- JSON — это текстовый файл, поэтому его можно легко передавать.
- JSON не зависит от конкретного языка.
Синтаксис
Данные в файле JSON должны быть в формате пар имя/значение, запятыми разделяют различные данные. Фигурные скобки используются для хранения объектов, а квадратные скобки — для хранения массивов.
Особенности JSON
- Простой.
- Имеет независимую платформу.
- Легко передать.
- Поддерживает расширяемость.
- Наличие совместимости.
Типы данных
- String — строка представлена внутри кавычек.
- Number — представляет числовые символы.
- Boolean – состоит либо из true, либо из false.
- Null – пустой.
JSON в Java
JSON-объекты
JSON-объекты представлены между фигурными скобками. Объекты должны быть в парах ключ/значение (key/value). Ключ представлен в виде String, а значения представляют любые типы данных, упомянутые выше. Пример:
JSON-массивы
Массивы JSON используются для хранения объектов. Эти объекты заключены в квадратные скобки []. Пример:
В приведенном выше примере сведения о студентах представлены в виде массива, а внутри массива данные о студентах хранятся в виде объектов.
Простая программа для JSON на Java
import org.json.simple.JSONObject; public class Json < public static void main(String args[]) < JSONObject j = new JSONObject(); j.put("Name", "Kotte"); j.put("College", "BVRIT"); j.put("Branch" , "Computer science engineering"); j.put("Section", "CSE-C"); System.out.println(j); >>
Чтение файла JSON в Java
Приведенный выше код — это файл, который используется для чтения. Мы используем библиотеку json.simple .
//program for reading a JSON file import org.json.simple.JSONArray; import org.json.simple.JSONObject; import org.json.simple.parser.*; public class JSON < public static void main(Strings args[]) < // file name is File.json Object o = new JSONParser().parse(new FileReader(File.json)); JSONObject j = (JSONObject) o; String Name = (String) j.get("Name"); String College = (String ) j.get("College"); System.out.println("Name :" + Name); System.out.println("College :" +College); >>
В данной программе используется JSONParser().parse() , который присутствует в org.json.simple.parser.* для анализа файла File.json.
Что такое Java Development Kit (JDK)?
Источник: Medium Эта публикация ознакомит вас с работой и сферой использования Java Development Kit. В своей работе программисты часто используют Java Development Kit (Комплект для разработки Java), известный как JDK. Он представляет собой кроссплатформенный набор инструментов и библиотек для создания программных приложений и апплетов на основе Java. Пакет JDK включает в себя как виртуальную машину Java (известную как JVM), так и среду выполнения Java (известную как JRE). Также в JDK имеется компилятор javac, инструменты мониторинга производительности, отладчик, стандартные библиотеки классов Java, примеры, документация и различные утилиты. Разработкой Java Development Kit (JDK) занимается корпорация Oracle. В ее продукте реализованы JVMS, JLS и Java API SE (API). Помимо коммерческой версии Oracle представила на рынке бесплатную версию пакета OpenJDK. Также на рынке Java-разработки существуют альтернативные JDK от других компаний. Если единственное, что вы хотите сделать на своем компьютере, — это запускать Java-приложения, то вам не нужно беспокоиться о различиях между Java Runtime Environment (JRE) и Java Development Kit (JDK). Однако вам понадобится Java Development Kit (JDK) для создания программного обеспечения на основе Java. Среда выполнения Java (JRE), входящая в состав JDK, называется частной средой выполнения (Private Runtime). Эта среда отличается от стандартной JRE тем, что включает дополнительные компоненты. Также она дает разработчикам доступ к виртуальной машине Java (JVM) и всем библиотекам классов, используемым в производственных средах, в дополнение к библиотекам интернационализации и IDL.
Самые популярные JDK
- Azul Systems Zing : высокопроизводительная виртуальная машина Java с малой задержкой для Linux.
- Azul Systems (для Linux, Windows, Mac OS X и IBM J9 JDK: для AIX, Linux, Windows и многих других операционных систем).
- Amazon Corretto (OpenJDK и долгосрочная поддержка включены).
Скомпилируйте и запустите код Java с помощью JDK
Вы можете создать исполняемую программу Java из текстового файла с помощью компилятора JDK. При компиляции ваш Java-код преобразуется в байт-код с расширением .class . Для начала вам нужно создать текстовый файл Java и сохранить его под уникальным именем. В данном случае мы сохраняем Hello.java в качестве имени файла. Затем запустите инструмент компиляции Java командой javac , и все готово. Чтобы избежать получения сообщения об ошибке, такого как “The system cannot locate a path supplied” (Система не может найти указанный путь), вы должны указать полный путь к вашему текстовому файлу Java. Hello — это имя файла, а полному пути к файлу предшествует Hello в следующем примере команды. Путь и исполняемый файл для javac.exe должны быть заключены в кавычки. Теперь, когда Hello.class создан, вы можете увидеть его в том же каталоге, что и Hello.java , что очень удобно. Теперь вы можете выполнить свой код, просто набрав java hello в своем терминале. Имейте в виду, что запуск вашего кода не требуется включение файла .class.
Компонент Jar
В JDK включены многие важные инструменты. Помимо javac чаще всего используется инструмент jar. В нем можно найти не что иное, как набор классов Java. Как только файлы .class будут готовы, вы можете упаковать их и сохранить в архиве, известном как “jar”. После этого jar-файл можно запускать в мобильной среде (Android).
How to Read JSON from a file using Jackson
In this quick tutorial, you’ll learn how to read JSON data from a file by using the Jackson API. Jackson is a popular JSON processing library for reading, writing, and parsing JSON data in Java.
implementation 'com.fasterxml.jackson.core:jackson-databind:2.10.0'
dependency> groupId>com.fasterxml.jackson.coregroupId> artifactId>jackson-databindartifactId> version>2.10.0version> dependency>
"title" : "Thinking in Java", "isbn" : "978-0131872486", "year" : 1998, "authors" : [ "Bruce Eckel" ] >
To read the above JSON file contents to a Java Map , you can use the readValue() method from ObjectMapper as shown below:
try // create object mapper instance ObjectMapper mapper = new ObjectMapper(); // convert JSON file to map Map?, ?> map = mapper.readValue(Paths.get("book.json").toFile(), Map.class); // print map entries for (Map.Entry?, ?> entry : map.entrySet()) System.out.println(entry.getKey() + "=" + entry.getValue()); > > catch (Exception ex) ex.printStackTrace(); >
title=Thinking in Java isbn=978-0131872486 year=1998 authors=[Bruce Eckel]
public class Book private String title; private String isbn; private long year; private String[] authors; public Book() > public Book(String title, String isbn, long year, String[] authors) this.title = title; this.isbn = isbn; this.year = year; this.authors = authors; > // getters and setters, equals(), toString() . (omitted for brevity) >
The following example demonstrates how you can read the above JSON file into a Book object by using the readValue() method:
try // create object mapper instance ObjectMapper mapper = new ObjectMapper(); // convert a JSON string to a Book object Book book = mapper.readValue(Paths.get("book.json").toFile(), Book.class); // print book System.out.println(book); > catch (Exception ex) ex.printStackTrace(); >
Booktitle='Thinking in Java', isbn='978-0131872486', year=1998, authors=[Bruce Eckel]>
[ "title": "Thinking in Java", "isbn": "978-0131872486", "year": 1998, "authors": [ "Bruce Eckel" ] >, "title": "Head First Java", "isbn": "0596009208", "year": 2003, "authors": [ "Kathy Sierra", "Bert Bates" ] > ]
You can now read a list of Book objects from the above JSON file using the same readValue() method as shown below:
try // create object mapper instance ObjectMapper mapper = new ObjectMapper(); // convert JSON array to list of books ListBook> books = Arrays.asList(mapper.readValue(Paths.get("books.json").toFile(), Book[].class)); // print books books.forEach(System.out::println); > catch (Exception ex) ex.printStackTrace(); >
Booktitle='Thinking in Java', isbn='978-0131872486', year=1998, authors=[Bruce Eckel]> Booktitle='Head First Java', isbn='0596009208', year=2003, authors=[Kathy Sierra, Bert Bates]>
For more Jackson examples, check out the How to read and write JSON using Jackson in Java tutorial. ✌️ Like this article? Follow me on Twitter and LinkedIn. You can also subscribe to RSS Feed.