fastjson (alibaba/fastjson)
Searching Database…
Что это такое?
Fastjson — это Java-библиотека, которая превращает Java-объекты в JSON и разбирает JSON-строки обратно в Java-объекты. Она работает с любыми Java-объектами, в том числе с теми, для которых у вас нет исходного кода.
То есть это библиотека, которую я подключаю к своему Java-проекту, а не отдельная программа, которую запускают?
Верно — это библиотека. Вы добавляете зависимость и вызываете toJSONString(), чтобы сериализовать объекты, и parseObject(), чтобы разобрать JSON обратно; отдельно запускать ничего не нужно.
Как добавить её в свой проект?
Подключите её как зависимость Maven или Gradle либо просто скачайте свежий JAR; в README также есть ссылка на Wiki Download Page с дополнительными вариантами репозиториев.
Какую версию выбрать — и репозиторий ещё живой?
В README рекомендуется FASTJSON 2.0.x — она быстрее и безопаснее, чем 1.x. Сам репозиторий на GitHub заархивирован, поэтому для актуальной разработки смотрите проект fastjson2.
Она работает и на Android, или только на сервере?
И там, и там. В README среди целей Fastjson названа высокая производительность и на серверной стороне, и на Android-клиентах, а на GitHub проект помечен тегом для Android.
А с объектами, чей исходный код мне не подконтролен, она справится?
Да — Fastjson работает с любыми Java-объектами, в том числе с уже существующими, которые нельзя изменить. Она также поддерживает Java-дженерики, собственное представление объектов и классы с глубокой иерархией наследования.
Я всё ещё сижу на Fastjson 1.x — есть ли путь миграции?
Да, в README рядом с домашней страницей документации и FAQ есть ссылка на FASTJSON 1.x User Upgrade Guide — руководство по обновлению, а также рекомендация перейти на 2.0.x.
Насколько она быстрая на практике?
В README никаких цифр нет; там даны ссылки на бенчмарк Eishay и бенчмарк fastjson2, чтобы вы сами оценили производительность на реальных нагрузках.
What are similar projects?
go, gjson, gson, json, flatbuffers, REDox, simdjson, SwiftyJSON
Which topics is it in?
json-parser, serialization, converter, jvm, parser, json, java, backend, mobile, performance, android, apache-2.0
