Бун — Обзор
Boon — это простой инструментарий на основе Java для JSON. Вы можете использовать Boon JSON для эффективного и быстрого кодирования или декодирования данных JSON.
Характеристики
-
Быстро — Boon JSON работает быстрее при сериализации объектов, обеспечивая JSON Expression и JSON Parsing по сравнению с Джексоном.
-
Легкий — имеет очень мало классов и обеспечивает необходимые функции, такие как кодирование / декодирование отображения объектов.
-
Привязка данных — большинство операций выполняется с использованием привязки данных и наложения индекса.
-
Нет общедоступной модели дерева — представление конечного пользователя является представлением привязки данных.
-
Поддерживает простое связывание данных — обеспечивает связывание данных с примитивами, а также с автоматическим боксом.
-
Высокая производительность — используется синтаксический анализатор на основе кучи и обеспечивает высокую производительность.
-
Нет зависимости — нет зависимости от внешней библиотеки. Может быть независимо включен.
-
Совместимость с JDK1.2 — Исходный код и двоичный файл совместимы с JDK1.2
Быстро — Boon JSON работает быстрее при сериализации объектов, обеспечивая JSON Expression и JSON Parsing по сравнению с Джексоном.
Легкий — имеет очень мало классов и обеспечивает необходимые функции, такие как кодирование / декодирование отображения объектов.
Привязка данных — большинство операций выполняется с использованием привязки данных и наложения индекса.
Нет общедоступной модели дерева — представление конечного пользователя является представлением привязки данных.
Поддерживает простое связывание данных — обеспечивает связывание данных с примитивами, а также с автоматическим боксом.
Высокая производительность — используется синтаксический анализатор на основе кучи и обеспечивает высокую производительность.
Нет зависимости — нет зависимости от внешней библиотеки. Может быть независимо включен.
Совместимость с JDK1.2 — Исходный код и двоичный файл совместимы с JDK1.2
Бун — Настройка среды
Настройка локальной среды
Если вы все еще хотите настроить свою среду для языка программирования Java, то в этом разделе вы узнаете, как загрузить и настроить Java на вашем компьютере. Пожалуйста, следуйте инструкциям ниже, чтобы настроить среду.
Java SE находится в свободном доступе по ссылке Скачать Java . Таким образом, вы загружаете версию, основанную на вашей операционной системе.
Следуйте инструкциям для загрузки Java и запуска .exe для установки Java на вашем компьютере. После того, как вы установили Java на свой компьютер, вам нужно будет установить переменные окружения, чтобы они указывали на правильные каталоги установки —
Настройка пути для Windows 2000 / XP
Мы предполагаем, что вы установили Java в каталог c: \ Program Files \ java \ jdk —
-
Щелкните правой кнопкой мыши «Мой компьютер» и выберите «Свойства».
-
Нажмите кнопку «Переменные среды» на вкладке «Дополнительно».
-
Теперь измените переменную Path, чтобы она также содержала путь к исполняемому файлу Java. Например, если в настоящий момент путь задан как «C: \ WINDOWS \ SYSTEM32», измените ваш путь на «C: \ WINDOWS \ SYSTEM32; c: \ Program Files \ java \ jdk \ bin».
Щелкните правой кнопкой мыши «Мой компьютер» и выберите «Свойства».
Нажмите кнопку «Переменные среды» на вкладке «Дополнительно».
Теперь измените переменную Path, чтобы она также содержала путь к исполняемому файлу Java. Например, если в настоящий момент путь задан как «C: \ WINDOWS \ SYSTEM32», измените ваш путь на «C: \ WINDOWS \ SYSTEM32; c: \ Program Files \ java \ jdk \ bin».
Настройка пути для Windows 95/98 / ME
Мы предполагаем, что вы установили Java в каталог c: \ Program Files \ java \ jdk —
-
Отредактируйте файл «C: \ autoexec.bat» и добавьте в конце следующую строку: «SET PATH =% PATH%; C: \ Program Files \ java \ jdk \ bin»
Отредактируйте файл «C: \ autoexec.bat» и добавьте в конце следующую строку: «SET PATH =% PATH%; C: \ Program Files \ java \ jdk \ bin»
Настройка пути для Linux, UNIX, Solaris, FreeBSD
Переменная среды PATH должна указывать на то, где установлены двоичные файлы Java. Обратитесь к документации по вашей оболочке, если у вас возникли проблемы с этим.
Например, если вы используете bash в качестве оболочки, вы добавили бы следующую строку в конец вашего .bashrc: export PATH = / path / to / java: $ PATH ‘
Популярные редакторы Java
Для написания ваших программ на Java вам нужен текстовый редактор. Есть много сложных IDE, доступных на рынке. Но сейчас вы можете рассмотреть один из следующих —
-
Блокнот — на компьютере с Windows вы можете использовать любой простой текстовый редактор, например Блокнот (рекомендуется для этого урока), TextPad.
-
Netbeans — это Java IDE с открытым исходным кодом, который можно загрузить по адресу https://www.netbeans.org/index.html .
-
Eclipse — это также Java IDE, разработанная сообществом открытого исходного кода eclipse, которую можно скачать по адресу https://www.eclipse.org/ .
Блокнот — на компьютере с Windows вы можете использовать любой простой текстовый редактор, например Блокнот (рекомендуется для этого урока), TextPad.
Netbeans — это Java IDE с открытым исходным кодом, который можно загрузить по адресу https://www.netbeans.org/index.html .
Eclipse — это также Java IDE, разработанная сообществом открытого исходного кода eclipse, которую можно скачать по адресу https://www.eclipse.org/ .
Скачать архив Boon
Загрузите последнюю версию файла jar Boon из репозитория Maven — Boon . В этом руководстве boon-0.34.jar загружается и копируется в папку C: \> boon.
Операционные системы | Название архива |
---|---|
Windows | находка-0.34.jar |
Linux | находка-0.34.jar |
макинтош | находка-0.34.jar |
Set Boon Environment
Установите переменную среды BOON, чтобы она указывала на базовую папку, в которой хранится Boon jar на вашем компьютере. Предполагается, что мы извлекли boon-0.34.jar в папку Boon в различных операционных системах следующим образом.
Операционные системы | Выход |
---|---|
Windows | Установите переменную окружения BOON в C: \ Boon |
Linux | экспорт BOON = / usr / local / Boon |
макинтош | экспорт BOON = / библиотека / благо |
Установить переменную CLASSPATH
Задайте переменную среды CLASSPATH, чтобы она указывала на расположение Boon jar. Предполагается, что вы сохранили boon-0.34.jar в папке Boon в различных операционных системах следующим образом.
Операционные системы | Выход |
---|---|
Windows | Установите для переменной среды CLASSPATH значение% CLASSPATH%;% Boon% \ boon-0.34.jar;.; |
Linux | экспорт CLASSPATH = $ CLASSPATH: $ BOON / boon-0.34.jar :. |
макинтош | экспорт CLASSPATH = $ CLASSPATH: $ BOON / boon-0.34.jar :. |
Благо — возразить
ObjectMapper — основной актерский класс библиотеки Boon. Класс ObjectMapper предоставляет функциональные возможности для чтения и записи JSON, как в базовые объекты POJO (простые старые объекты Java), так и из общей модели дерева JSON (JsonNode), а также связанные функции для выполнения преобразований. Он также обладает широкими возможностями настройки для работы как с различными стилями содержимого JSON, так и для поддержки более сложных концепций объектов, таких как полиморфизм и идентичность объектов.
В следующем примере используется класс ObjectMapper для анализа строки JSON в объекте Student.
пример
import org.boon.json.JsonFactory; import org.boon.json.ObjectMapper; public class BoonTester { public static void main(String args[]){ ObjectMapper mapper = JsonFactory.create(); String jsonString = "{\"name\":\"Mahesh\", \"age\":21}"; Student student = mapper.readValue(jsonString, Student.class); System.out.println(student); } } class Student { private String name; private int age; public Student(){} public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public String toString(){ return "Student [ name: "+name+", age: "+ age+ " ]"; } }
Выход
Student [ name: Mahesh, age: 21 ]
Бун — На карту
Класс ObjectMapper также можно использовать для анализа json-объекта Map вместо объекта POJO.
В следующем примере используется класс ObjectMapper для анализа строки JSON в объекте Map.
пример
import java.util.Map; import org.boon.json.JsonFactory; import org.boon.json.ObjectMapper; public class BoonTester { public static void main(String args[]) { ObjectMapper mapper = JsonFactory.create(); String jsonString = "{\"name\":\"Mahesh\", \"age\":21}"; Map studentMap = mapper.readValue(jsonString, Map.class); System.out.println("Name: " + studentMap.get("name")); System.out.println("Age: " + studentMap.get("age")); } }
Выход
Name: Mahesh Age: 21
Бун — Источники
Класс ObjectMapper может использоваться для анализа json из разных источников. Он может использовать следующие источники для анализа JSON.
-
байтовый массив
-
Char Array
-
файл
-
Читательские классы
-
Классы входного потока
-
строка
байтовый массив
Char Array
файл
Читательские классы
Классы входного потока
строка
В следующем примере используется класс ObjectMapper для синтаксического анализа массива JSON в объекте Map.
пример
import java.util.Map; import org.boon.json.JsonFactory; import org.boon.json.ObjectMapper; public class BoonTester { public static void main(String args[]){ ObjectMapper mapper = JsonFactory.create(); String jsonString = "{\"name\":\"Mahesh\", \"age\":21}"; char[] jsonCharAray = jsonString.toCharArray(); Map studentMap = mapper.readValue(jsonCharAray, Map.class); System.out.println("Name: " + studentMap.get("name")); System.out.println("Age: " + studentMap.get("age")); } }
Выход
Name: Mahesh Age: 21
Бун — от объекта
Класс ObjectMapper можно использовать для генерации строки json из объекта.
В следующем примере используется класс ObjectMapper для генерации строки JSON из объекта Student.
пример
import org.boon.json.JsonFactory; import org.boon.json.ObjectMapper; public class BoonTester { public static void main(String args[]){ ObjectMapper mapper = JsonFactory.create(); Student student = new Student("Mahesh", 21); String jsonString = mapper.writeValueAsString(student); System.out.println(jsonString); } } class Student { public String name; public int age; public Student(String name, int age) { this.name = name; this.age = age; } }
Выход
{"name":"Mahesh","age":21}
Бун — С карты
Класс ObjectMapper может использоваться для генерации строки json из Map.
В следующем примере используется класс ObjectMapper для генерации строки JSON из объекта карты.
пример
import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import org.boon.json.JsonFactory; import org.boon.json.ObjectMapper; public class BoonTester { public static void main(String args[]){ ObjectMapper mapper = JsonFactory.create(); Map<String, String> student = new HashMap<>(); student.put("Name", "Mahesh"); student.put("RollNo", "21"); Map<String, String> student1 = new HashMap<>(); student1.put("Name", "Suresh"); student1.put("RollNo", "22"); List<Map<String,String>> studentList = new ArrayList<>(); studentList.add(student); studentList.add(student1); Map<String, List> studentMap = new HashMap<String, List>(); studentMap.put("students", studentList); String jsonString = mapper.writeValueAsString(studentMap); System.out.println(jsonString); } }
Выход
{"students":[{"RollNo":"21","Name":"Mahesh"},{"RollNo":"22","Name":"Suresh"}]}
Бун — давно на сегодняшний день
Класс ObjectMapper может использоваться для работы с различными форматами даты в JSON. Может использоваться для анализа / генерации длинной версии даты.
В следующем примере используется класс ObjectMapper для генерации строки Date из длинной версии.
пример
import java.util.Date; import org.boon.json.JsonFactory; import org.boon.json.ObjectMapper; public class BoonTester { public static void main(String args[]) { ObjectMapper mapper = JsonFactory.create(); String jsonString = "{\"name\":\"Mahesh\", \"age\":21, \"dateOfBirth\":976559400000}"; //mapper converts long to date automatically Student student = mapper.readValue(jsonString, Student.class); System.out.println(student.dateOfBirth); //by default mapper converts date to long jsonString = mapper.writeValueAsString(student); System.out.println(jsonString); } } class Student { public String name; public int age; public Date dateOfBirth; public Student(String name, int age, Date dateOfBirth) { this.name = name; this.age = age; this.dateOfBirth = dateOfBirth; } }
Выход
Tue Dec 12 00:00:00 IST 2000 {"name":"Mahesh","age":21,"dateOfBirth":976559400000}
Boon — String To Date
Класс ObjectMapper может использоваться для работы с различными форматами даты в JSON. Может использоваться для анализа / генерации строковой версии даты.
В следующем примере используется класс ObjectMapper для генерации строки Date из версии String.
пример
import java.util.Date; import org.boon.json.JsonFactory; import org.boon.json.ObjectMapper; public class BoonTester { public static void main(String args[]) { ObjectMapper mapper = JsonFactory.create(); String jsonString = "{\"name\":\"Mahesh\", \"age\":21, \"dateOfBirth\":\"1998-08-11T11:31:00.034Z\" }"; //mapper converts String to date automatically Student student = mapper.readValue(jsonString, Student.class); System.out.println(student.dateOfBirth); //by default mapper converts date to long jsonString = mapper.writeValueAsString(student); System.out.println(jsonString); } } class Student { public String name; public int age; public Date dateOfBirth; public Student(String name, int age, Date dateOfBirth) { this.name = name; this.age = age; this.dateOfBirth = dateOfBirth; } }
Выход
Tue Aug 11 17:01:00 IST 1998 {"name":"Mahesh","age":21,"dateOfBirth":902835060034}
Бун — Дата создания
Класс ObjectMapper может использоваться для работы с различными форматами даты в JSON. Он также может быть использован для создания объекта даты. По умолчанию ObjectMapper генерирует дату в версии с длинными миллисекундами. Используя ObjectMapper, возвращаемый методом JsonFactory.createUseJSONDates (), мы можем получить строковую версию даты во время синтаксического анализа.
В следующем примере используется класс ObjectMapper для генерации строки Date путем анализа JSON.
пример
import java.util.Date; import org.boon.json.JsonFactory; import org.boon.json.ObjectMapper; public class BoonTester { public static void main(String args[]) { ObjectMapper mapper = JsonFactory.createUseJSONDates(); String jsonString = "{\"name\":\"Mahesh\", \"age\":21, \"dateOfBirth\":\"1998-08-11T11:31:00.034Z\" }"; //mapper converts String to date automatically Student student = mapper.readValue(jsonString, Student.class); System.out.println(student.dateOfBirth); //Mapper converts date to date string now jsonString = mapper.writeValueAsString(student); System.out.println(jsonString); } } class Student { public String name; public int age; public Date dateOfBirth; public Student(String name, int age, Date dateOfBirth) { this.name = name; this.age = age; this.dateOfBirth = dateOfBirth; } }
Выход
Tue Aug 11 17:01:00 IST 1998 {"name":"Mahesh","age":21,"dateOfBirth":"1998-08-11T11:31:00.034Z"}
Бун — @JsonIgnore
@JsonIgnore используется на уровне поля для пометки свойства или списка свойств, которые следует игнорировать.
Пример — @JsonIgnore
import org.boon.json.JsonFactory; import org.boon.json.ObjectMapper; import org.boon.json.annotations.JsonIgnore; public class BoonTester { public static void main(String args[]) { ObjectMapper mapper = JsonFactory.create(); Student student = new Student(1,11,"1ab","Mark"); String jsonString = mapper.writeValueAsString(student); System.out.println(jsonString); } } class Student { public int id; @JsonIgnore public String systemId; public int rollNo; public String name; Student(int id, int rollNo, String systemId, String name) { this.id = id; this.systemId = systemId; this.rollNo = rollNo; this.name = name; } }
Выход
{"id":1,"rollNo":11,"name":"Mark"}
Бун — @JsonInclude
@JsonInclude используется для включения свойств со значениями null / empty или значениями по умолчанию. По умолчанию Boon игнорирует такие свойства во время сериализации / десериализации.
Пример — @JsonInclude
import org.boon.json.JsonFactory; import org.boon.json.ObjectMapper; import org.boon.json.annotations.JsonInclude; public class BoonTester { public static void main(String args[]) { ObjectMapper mapper = JsonFactory.createUseAnnotations( true ); Student student = new Student(1,null); String jsonString = mapper.writeValueAsString(student); System.out.println(jsonString); } } class Student { public int id; @JsonInclude public String name; Student(int id, String name) { this.id = id; this.name = name; } }
Выход
{"id":1,"name":null}
Бун — @JsonViews
@JsonViews используется для управления сериализованными значениями или нет.
Пример — @JsonView
import org.boon.json.JsonSerializer; import org.boon.json.JsonSerializerFactory; import org.boon.json.annotations.JsonViews; public class BoonTester { public static void main(String args[]) { JsonSerializer serializerPublic = new JsonSerializerFactory() .useAnnotations() .setView( "public" ) .create(); JsonSerializer serializerInternal = new JsonSerializerFactory() .useAnnotations() .setView( "internal" ) .create(); Student student = new Student(1,"Mark", 20); String jsonString = serializerPublic.serialize( student ).toString(); System.out.println(jsonString); jsonString = serializerInternal.serialize( student ).toString(); System.out.println(jsonString); } } class Student { public int id; public String name; @JsonViews( ignoreWithViews = {"public"}, includeWithViews = {"internal"}) public int age; Student(int id, String name, int age) { this.id = id; this.name = name; this.age = age; } }
Выход
{"id":1,"name":"Mark"} {"id":1,"name":"Mark","age":20}
Бун — @JsonProperty
@JsonProperty используется для маркировки нестандартного метода получения / установки, который будет использоваться относительно свойства json.