{"id":279123,"date":"2016-04-26T18:20:03","date_gmt":"2016-04-26T14:20:03","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=279123"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=279123","title":{"rendered":"\u0428\u043f\u0430\u0440\u0433\u0430\u043b\u043a\u0430 Java \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442\u0430 8. \u0411\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 Json (Gson, Fastjson, LoganSquare, Jackson, JsonPath \u0438 \u0434\u0440\u0443\u0433\u0438\u0435)"},"content":{"rendered":"\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/a2c\/9b5\/177\/a2c9b51776a24372abddfdc19e1b74d0.png\" alt=\"image\"\/><\/p>\n<p>  <\/p>\n<p>\u0412 \u043e\u0434\u043d\u043e\u0439 \u0438\u0437 \u043c\u043e\u0438\u0445 <a href=\"https:\/\/habrahabr.ru\/company\/luxoft\/blog\/280784\/\">\u043f\u0440\u043e\u0448\u043b\u044b\u0445 \u0441\u0442\u0430\u0442\u0435\u0439<\/a> \u044f \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u044b\u0432\u0430\u043b \u043e \u0441\u0432\u043e\u0435\u043c opensorce pet \u043f\u0440\u043e\u0435\u043a\u0442\u0435 <a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/link-rus\">useful-java-links<\/a>, \u0438\u0434\u0435\u044f \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u0441\u043e\u0431\u0440\u0430\u0442\u044c \u043a\u0430\u043a \u043c\u043e\u0436\u043d\u043e \u0431\u043e\u043b\u044c\u0448\u0435 \u0441\u0441\u044b\u043b\u043e\u043a \u043d\u0430 \u043f\u043e\u043b\u0435\u0437\u043d\u044b\u0435 Java \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 \u0438 \u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a\u0438. \u0423 \u043d\u0435\u0433\u043e \u0442\u0430\u043a \u0436\u0435 \u0435\u0441\u0442\u044c \u043f\u043e\u0434\u043f\u0440\u043e\u0435\u043a\u0442 <a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\">Hello World project<\/a> \u0438\u0434\u0435\u044f \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0439 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 \u0441\u043e\u0431\u0440\u0430\u0442\u044c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043f\u0440\u043e\u0441\u0442\u044b\u0445 \u043f\u0440\u0438\u043c\u0435\u0440\u043e\u0432 \u0435\u0451 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f. <\/p>\n<p>  <\/p>\n<p>\u041f\u0440\u043e\u0431\u043b\u0435\u043c\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442\u043e\u0432 \u0432 Java \u043c\u0438\u0440\u0435 \u0432 \u0442\u043e\u043c \u0447\u0442\u043e \u043a\u0440\u043e\u043c\u0435 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0439 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 JDK \u0435\u0441\u0442\u044c \u043e\u0433\u0440\u043e\u043c\u043d\u043e\u0435 \u0434\u0440\u0443\u0433\u0438\u0445 \u043f\u043e\u043b\u0435\u0437\u043d\u044b\u0445 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a, \u043f\u0440\u0438\u0447\u0435\u043c \u043f\u0435\u0440\u0435\u0445\u043e\u0434 \u043e\u0442 \u043e\u0434\u043d\u043e\u0439 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 \u043a \u0434\u0440\u0443\u0433\u043e\u0439 \u043c\u043e\u0436\u0435\u0442 \u0432\u044b\u0437\u044b\u0432\u0430\u0442\u044c \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b \u0438\u0437-\u0437\u0430 \u043d\u0435\u043f\u043e\u043b\u043d\u043e\u0439 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438, \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u044f \u043f\u0440\u043e\u0441\u0442\u044b\u0445 \u043f\u0440\u0438\u043c\u0435\u0440\u043e\u0432 \u0438\u043b\u0438 \u0434\u0430\u0436\u0435 \u0441\u043b\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u043f\u043e\u043d\u044f\u0442\u044c \u043a\u0430\u043a\u0438\u0435 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043d\u0443\u0436\u043d\u043e \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0432 maven \u0447\u0442\u043e\u0431\u044b \u0432\u0441\u0435 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u043b\u043e\u0441\u044c. \u0410 \u043d\u0430 \u043d\u043e\u0432\u043e\u0439 \u0440\u0430\u0431\u043e\u0442\u0435 \u0432\u043f\u043e\u043b\u043d\u0435 \u043c\u043e\u0433\u0443\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0432\u043c\u0435\u0441\u0442\u043e \u0442\u0432\u043e\u0435\u0439 \u043b\u044e\u0431\u0438\u043c\u043e\u0439 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 \u0442\u0443 \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u0442\u044b \u043d\u0435 \u0437\u043d\u0430\u0435\u0448\u044c. \u0418\u0434\u0435\u044f <a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\">\u043c\u043e\u0435\u0433\u043e \u043f\u0440\u043e\u0435\u043a\u0442\u0430<\/a> \u043e\u0431\u043b\u0435\u0433\u0447\u0438\u0442\u044c \u0438\u0437\u0443\u0447\u0435\u043d\u0438\u0435 \u0438 \u0432\u044b\u0431\u043e\u0440 \u0440\u0430\u0437\u043d\u044b\u0445 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a. <\/p>\n<p>  <\/p>\n<p>\u0418\u0442\u0430\u043a, \u0434\u0430\u0432\u0430\u0439\u0442\u0435 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043a\u0430\u043a\u0438\u0435 \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b\u0435 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 \u0435\u0441\u0442\u044c \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 JSON \u0432 Java\u2026 <\/p>\n<p><a name=\"habracut\"><\/a>  <\/p>\n<p>\u0426\u0438\u0442\u0430\u0442\u0430 \u0438\u0437 <a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/link-rus\">useful-java-links<\/a>: <\/p>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">8. \u0420\u0430\u0431\u043e\u0442\u0430 \u0441 Json&#8230;<\/b><\/p>\n<div class=\"spoiler_text\">\n<h3>8. \u0420\u0430\u0431\u043e\u0442\u0430 \u0441 Json<\/h3>\n<p>  <\/p>\n<h5>JSON \u043f\u0430\u0440\u0441\u0435\u0440\u044b<\/h5>\n<p>  <\/p>\n<ol>\n<li><a href=\"https:\/\/github.com\/alibaba\/fastjson\">Alibaba Fastjson<\/a> \u0411\u044b\u0441\u0442\u0440\u044b\u0439 JSON \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a, \u0440\u0435\u0439\u0442\u0438\u043d\u0433 github&#8217;\u0430 \u2014 4851. <a href=\"https:\/\/github.com\/alibaba\/fastjson\">User guide<\/a> \u0438 <a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\/3.8-json\/fastjson\">Hello World examples<\/a>. \u041b\u0438\u0446\u0435\u043d\u0437\u0438\u044f: <a href=\"http:\/\/www.apache.org\/licenses\/LICENSE-2.0\">Apache 2<\/a>. <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/5a4\/803\/524\/5a4803524b0d4129a5a4159912998f45.png\" alt=\"\u041b\u0438\u0446\u0435\u043d\u0437\u0438\u044f \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u0430 \u0441 \u0437\u0430\u043a\u0440\u044b\u0442\u044b\u043c \u041f\u041e\"\/><\/li>\n<li><a href=\"https:\/\/github.com\/google\/gson\">Gson<\/a> \u2014 \u041f\u0440\u043e\u0441\u0442\u0430\u044f \u0441\u0435\u0440\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432 \u0432 JSON \u0438 \u043e\u0431\u0440\u0430\u0442\u043d\u043e. \u0425\u043e\u0440\u043e\u0448\u0430\u044f \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0438 \u043b\u0435\u0433\u043a\u043e\u0441\u0442\u044c \u0432 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0438, \u0440\u0435\u0439\u0442\u0438\u043d\u0433 github&#8217;\u0430 \u2014 4120. <a href=\"https:\/\/github.com\/google\/gson\/blob\/master\/UserGuide.md\">User guide<\/a> \u0438 <a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\/3.8-json\/gson\">Hello World examples<\/a>. \u041b\u0438\u0446\u0435\u043d\u0437\u0438\u044f: <a href=\"http:\/\/www.apache.org\/licenses\/LICENSE-2.0\">Apache 2<\/a>. <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/5a4\/803\/524\/5a4803524b0d4129a5a4159912998f45.png\" alt=\"\u041b\u0438\u0446\u0435\u043d\u0437\u0438\u044f \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u0430 \u0441 \u0437\u0430\u043a\u0440\u044b\u0442\u044b\u043c \u041f\u041e\"\/><\/li>\n<li><a href=\"https:\/\/github.com\/bluelinelabs\/LoganSquare\">LoganSquare<\/a> -\u0411\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430 \u043f\u0430\u0440\u0441\u0438\u043d\u0433\u0430 \u0438 \u0441\u0435\u0440\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 JSON, \u043e\u0441\u043d\u043e\u0432\u0430\u043d\u043d\u0430\u044f \u043d\u0430 Jackson&#8217;s streaming API. \u041f\u043e \u0441\u043b\u043e\u0432\u0430\u043c \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432, \u043f\u0440\u0435\u0432\u043e\u0441\u0445\u043e\u0434\u0438\u0442 \u043f\u043e \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 GSON \u0438 Jackson \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438, \u0440\u0435\u0439\u0442\u0438\u043d\u0433 github&#8217;\u0430 \u2014 2188. <a href=\"https:\/\/github.com\/bluelinelabs\/LoganSquare#usage\">User guide<\/a> \u0438 <a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\/3.8-json\/logansquare\">Hello World examples<\/a>. \u041b\u0438\u0446\u0435\u043d\u0437\u0438\u044f: <a href=\"http:\/\/www.apache.org\/licenses\/LICENSE-2.0\">Apache 2<\/a>. <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/5a4\/803\/524\/5a4803524b0d4129a5a4159912998f45.png\" alt=\"\u041b\u0438\u0446\u0435\u043d\u0437\u0438\u044f \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u0430 \u0441 \u0437\u0430\u043a\u0440\u044b\u0442\u044b\u043c \u041f\u041e\"\/><\/li>\n<li><a href=\"https:\/\/github.com\/stleary\/JSON-java\">JSON java<\/a> \u0420\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 JSON \u0432 Java \u043e\u0442 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432 JSON \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u0430, \u0440\u0435\u0439\u0442\u0438\u043d\u0433 github&#8217;\u0430 \u2014 1937. <a href=\"https:\/\/github.com\/stleary\/JSON-java\">User guide<\/a> \u0438 <a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\/3.8-json\/json_java\">Hello World examples<\/a>. \u041b\u0438\u0446\u0435\u043d\u0437\u0438\u044f: <a href=\"https:\/\/en.wikipedia.org\/wiki\/Douglas_Crockford#.22Good.2C_not_Evil.22\">Crockford&#8217;s license (MIT License + &quot;Good, not Evil&quot;)<\/a>.<\/li>\n<li><a href=\"https:\/\/github.com\/square\/moshi\">Square Moshi<\/a> JSON \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430 \u0434\u043b\u044f Android \u0438 Java, \u0441\u043b\u0443\u0436\u0438\u0442 \u0434\u043b\u044f \u0443\u043f\u0440\u043e\u0449\u0435\u043d\u0438\u044f \u043f\u0430\u0440\u0441\u0438\u043d\u0433\u0430 Json \u0432 \u043e\u0431\u044a\u0435\u043a\u0442\u044b Java, \u0440\u0435\u0439\u0442\u0438\u043d\u0433 github&#8217;\u0430 \u2014 1732. <a href=\"https:\/\/github.com\/square\/moshi#moshi\">User guide<\/a> \u0438 <a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\/3.8-json\/moshi\">Hello World examples<\/a>. \u041b\u0438\u0446\u0435\u043d\u0437\u0438\u044f: <a href=\"http:\/\/www.apache.org\/licenses\/LICENSE-2.0\">Apache 2<\/a> <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/5a4\/803\/524\/5a4803524b0d4129a5a4159912998f45.png\" alt=\"\u041b\u0438\u0446\u0435\u043d\u0437\u0438\u044f \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u0430 \u0441 \u0437\u0430\u043a\u0440\u044b\u0442\u044b\u043c \u041f\u041e\"\/><\/li>\n<li><a href=\"https:\/\/github.com\/Instagram\/ig-json-parser\">Instagram Ig json parser<\/a> \u0411\u044b\u0441\u0442\u0440\u044b\u0439 JSON \u043f\u0430\u0440\u0441\u0435\u0440 \u0434\u043b\u044f java \u043f\u0440\u043e\u0435\u043a\u0442\u043e\u0432, \u0440\u0435\u0439\u0442\u0438\u043d\u0433 github&#8217;\u0430 \u2014 921. <a href=\"https:\/\/github.com\/Instagram\/ig-json-parser#getting-started\">User guide<\/a> \u0438 <a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\/3.8-json\/ig_json_parser\">Hello World examples<\/a>. \u041b\u0438\u0446\u0435\u043d\u0437\u0438\u044f: <a href=\"https:\/\/en.wikipedia.org\/wiki\/BSD_licenses#3-clause_license_.28.22Revised_BSD_License.22.2C_.22New_BSD_License.22.2C_or_.22Modified_BSD_License.22.29\">BSD 3<\/a>. <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/5a4\/803\/524\/5a4803524b0d4129a5a4159912998f45.png\" alt=\"\u041b\u0438\u0446\u0435\u043d\u0437\u0438\u044f \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u0430 \u0441 \u0437\u0430\u043a\u0440\u044b\u0442\u044b\u043c \u041f\u041e\"\/><\/li>\n<li><a href=\"http:\/\/wiki.fasterxml.com\/JacksonHome\">Jackson<\/a> \u2014 \u041f\u043e\u0445\u043e\u0436\u0435 \u043d\u0430 GSON, \u043d\u043e \u0431\u043e\u043b\u0435\u0435 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u0430, \u0435\u0441\u043b\u0438 \u0432\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u0447\u0430\u0441\u0442\u043e \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u0442\u044c \u044d\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438. \u041f\u043e\u0434\u043f\u0440\u043e\u0435\u043a\u0442\u044b: <a href=\"https:\/\/github.com\/FasterXML\/jackson-core\">Jackson core<\/a> \u0411\u0430\u0437\u043e\u0432\u0430\u044f \u0447\u0430\u0441\u0442\u044c \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u0430, <a href=\"https:\/\/github.com\/FasterXML\/jackson-databind\">Jackson databind<\/a> \u0411\u0430\u0437\u043e\u0432\u0430\u044f \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f databind&#8217;\u0430, \u0440\u0435\u0439\u0442\u0438\u043d\u0433 github&#8217;\u0430 \u2014 881. <a href=\"https:\/\/github.com\/FasterXML\/jackson-docs\">User guide<\/a> \u0438 <a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\/3.8-json\/jackson\">Hello World examples<\/a>. \u041b\u0438\u0446\u0435\u043d\u0437\u0438\u044f: <a href=\"http:\/\/www.apache.org\/licenses\/LICENSE-2.0\">Apache 2<\/a>. <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/5a4\/803\/524\/5a4803524b0d4129a5a4159912998f45.png\" alt=\"\u041b\u0438\u0446\u0435\u043d\u0437\u0438\u044f \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u0430 \u0441 \u0437\u0430\u043a\u0440\u044b\u0442\u044b\u043c \u041f\u041e\"\/><\/li>\n<li><a href=\"http:\/\/owlike.github.io\/genson\/\">Genson<\/a> \u2014 \u041c\u043e\u0449\u043d\u0430\u044f \u0438 \u043f\u0440\u043e\u0441\u0442\u0430\u044f \u0432 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0438 Java \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430 \u0434\u043b\u044f \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0432\/\u0438\u0437 JSON, \u0440\u0435\u0439\u0442\u0438\u043d\u0433 github&#8217;\u0430 \u2014 108. <a href=\"http:\/\/owlike.github.io\/genson\/Documentation\/UserGuide\/\">User guide<\/a> \u0438 <a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\/3.8-json\/genson\">Hello World examples<\/a>. \u041b\u0438\u0446\u0435\u043d\u0437\u0438\u044f: <a href=\"http:\/\/www.apache.org\/licenses\/LICENSE-2.0\">Apache 2<\/a>. <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/5a4\/803\/524\/5a4803524b0d4129a5a4159912998f45.png\" alt=\"\u041b\u0438\u0446\u0435\u043d\u0437\u0438\u044f \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u0430 \u0441 \u0437\u0430\u043a\u0440\u044b\u0442\u044b\u043c \u041f\u041e\"\/><\/li>\n<\/ol>\n<p>  <\/p>\n<h5>\u0410\u043d\u0430\u043b\u043e\u0433 XPath \u0434\u043b\u044f JSON<\/h5>\n<p>  <\/p>\n<ol>\n<li><a href=\"https:\/\/github.com\/jayway\/JsonPath\">Jayway JsonPath<\/a> Java JsonPath \u2014 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0430\u043d\u0430\u043b\u043e\u0433\u0430 XPATH \u0442\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f Json, \u0430 \u043d\u0435 XML, \u0440\u0435\u0439\u0442\u0438\u043d\u0433 github&#8217;\u0430 \u2014 849. <a href=\"https:\/\/github.com\/jayway\/JsonPath#getting-started\">User guide<\/a> \u0438 <a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\/3.8-json\/json_path\">Hello World examples<\/a>. \u041b\u0438\u0446\u0435\u043d\u0437\u0438\u044f: <a href=\"http:\/\/www.apache.org\/licenses\/LICENSE-2.0\">Apache 2<\/a>. <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/5a4\/803\/524\/5a4803524b0d4129a5a4159912998f45.png\" alt=\"\u041b\u0438\u0446\u0435\u043d\u0437\u0438\u044f \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u0430 \u0441 \u0437\u0430\u043a\u0440\u044b\u0442\u044b\u043c \u041f\u041e\"\/><\/li>\n<li><a href=\"https:\/\/github.com\/alibaba\/fastjson\">Alibaba Fastjson<\/a> \u0411\u044b\u0441\u0442\u0440\u044b\u0439 JSON \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a, \u0440\u0435\u0439\u0442\u0438\u043d\u0433 github&#8217;\u0430 \u2014 4851. <a href=\"https:\/\/github.com\/alibaba\/fastjson\">User guide<\/a> \u0438 <a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\/3.8-json\/fastjson\">Hello World examples<\/a>. \u041b\u0438\u0446\u0435\u043d\u0437\u0438\u044f: <a href=\"http:\/\/www.apache.org\/licenses\/LICENSE-2.0\">Apache 2<\/a>. <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/5a4\/803\/524\/5a4803524b0d4129a5a4159912998f45.png\" alt=\"\u041b\u0438\u0446\u0435\u043d\u0437\u0438\u044f \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u0430 \u0441 \u0437\u0430\u043a\u0440\u044b\u0442\u044b\u043c \u041f\u041e\"\/><\/li>\n<\/ol>\n<p>  <\/p>\n<h5>\u0413\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f Java \u043a\u043b\u0430\u0441\u0441\u043e\u0432 \u0438\u0437 JSON \u0438\u043b\u0438 JSON \u0441\u0445\u0435\u043c\u044b \u0438 JSON \u0432\u0430\u043b\u0438\u0434\u0430\u0446\u0438\u044f<\/h5>\n<p>  <\/p>\n<ol>\n<li><a href=\"https:\/\/github.com\/joelittlejohn\/jsonschema2pojo\">Jsonschema2pojo<\/a> \u0413\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f Java \u043a\u043b\u0430\u0441\u0441\u043e\u0432 \u0438\u0437 JSON \u0441\u0445\u0435\u043c\u044b (\u0438\u043b\u0438 \u043f\u0440\u0438\u043c\u0435\u0440\u0430 JSON) \u0441 \u0430\u043d\u043d\u043e\u0442\u0430\u0446\u0438\u044f\u043c\u0438 \u0434\u043b\u044f data-binding \u0434\u043b\u044f Jackson 1.x or 2.x, Gson \u0438 \u0442.\u00a0\u043f.., \u0440\u0435\u0439\u0442\u0438\u043d\u0433 github&#8217;\u0430 \u2014 1664. <a href=\"https:\/\/github.com\/joelittlejohn\/jsonschema2pojo\/wiki\/Getting-Started\">User guide<\/a> \u0438 <a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\/3.8-json\/jsonschema2pojo\">Hello World examples<\/a>. \u041b\u0438\u0446\u0435\u043d\u0437\u0438\u044f: <a href=\"http:\/\/www.apache.org\/licenses\/LICENSE-2.0\">Apache 2<\/a>. <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/5a4\/803\/524\/5a4803524b0d4129a5a4159912998f45.png\" alt=\"\u041b\u0438\u0446\u0435\u043d\u0437\u0438\u044f \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u0430 \u0441 \u0437\u0430\u043a\u0440\u044b\u0442\u044b\u043c \u041f\u041e\"\/><\/li>\n<li><a href=\"https:\/\/github.com\/fge\/json-schema-validator\">Json schema validator<\/a> \u0412\u0430\u043b\u0438\u0434\u0430\u0446\u0438\u044f JSON \u0441\u0445\u0435\u043c\u044b, \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u0430 \u043d\u0430 \u0447\u0438\u0441\u0442\u043e\u0439 Java, \u0441\u043e\u0437\u0434\u0430\u043d\u0430 \u0441 \u0446\u0435\u043b\u044c\u044e \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 Json \u0444\u0430\u0439\u043b\u043e\u0432, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f Json \u0441\u0445\u0435\u043c\u044b., \u0442\u0430\u043a \u0436\u0435 \u043c\u043e\u0436\u0435\u0442 \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c Java \u043a\u043b\u0430\u0441\u0441\u044b \u0438\u0437 \u0441\u0445\u0435\u043c\u044b \u0438 \u043d\u0430\u043e\u0431\u043e\u0440\u043e\u0442, \u0440\u0435\u0439\u0442\u0438\u043d\u0433 github&#8217;\u0430 \u2014 547. <a href=\"https:\/\/github.com\/fge\/json-schema-validator#read-me-first\">User guide<\/a> \u0438 <a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\/3.8-json\/json_schema_validator\">Hello World examples<\/a>. \u041b\u0438\u0446\u0435\u043d\u0437\u0438\u044f: <a href=\"https:\/\/en.wikipedia.org\/wiki\/GNU_Lesser_General_Public_License\">GNU Lesser 3<\/a>\/<a href=\"http:\/\/www.apache.org\/licenses\/LICENSE-2.0\">Apache 2<\/a>. <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/5a4\/803\/524\/5a4803524b0d4129a5a4159912998f45.png\" alt=\"\u041b\u0438\u0446\u0435\u043d\u0437\u0438\u044f \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u0430 \u0441 \u0437\u0430\u043a\u0440\u044b\u0442\u044b\u043c \u041f\u041e\"\/><\/li>\n<\/ol>\n<\/div>\n<\/div>\n<p>  <\/p>\n<p>\u0418\u0442\u0430\u043a, \u0443 \u043d\u0430\u0441 \u0432\u043e\u0441\u0435\u043c\u044c \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a \u0434\u043b\u044f \u0441\u0435\u0440\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0438 \u0434\u0435\u0441\u0435\u0440\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0432 json, \u0434\u0432\u0435 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 \u0434\u043b\u044f \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 Java \u043a\u043b\u0430\u0441\u0441\u043e\u0432 \u043f\u043e \u0441\u0445\u0435\u043c\u0435 \u0438\u043b\u0438 json \u0444\u0430\u0439\u043b\u0443, \u043e\u0434\u043d\u0430 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430 \u0434\u043b\u044f \u0432\u0430\u043b\u0438\u0434\u0430\u0446\u0438\u0438 \u0441\u0445\u0435\u043c\u044b \u0438 \u0434\u0432\u0430 \u0430\u043d\u0430\u043b\u043e\u0433\u0430 XPath, \u043d\u043e \u0434\u043b\u044f json. \u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043a\u0430\u0436\u0434\u0443\u044e \u0438\u0437 \u043d\u0438\u0445.<\/p>\n<p>  <\/p>\n<h2>1. JSON \u043f\u0430\u0440\u0441\u0435\u0440\u044b<\/h2>\n<p>  <\/p>\n<p>\u0421\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 \u0442\u0440\u0438 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0445 \u0441\u043f\u043e\u0441\u043e\u0431\u0430 \u0441\u0435\u0440\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0438 \u0434\u0435\u0441\u0435\u0440\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0441\u0440\u0435\u0434\u0438 \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u0445 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a (\u043e\u0442 \u0441\u0430\u043c\u043e\u0433\u043e \u043f\u0440\u043e\u0441\u0442\u043e\u0433\u043e \u043a \u0441\u0430\u043c\u043e\u043c\u0443 \u0441\u043b\u043e\u0436\u043d\u043e\u043c\u0443) \u0438 \u043e\u0434\u0438\u043d \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439: <\/p>\n<p>  <\/p>\n<ol>\n<li>Data bind,<\/li>\n<li>Tree Model,<\/li>\n<li>Streaming API,<\/li>\n<li>(\u0418 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0441\u043f\u043e\u0441\u043e\u0431) \u0410\u043d\u0430\u043b\u043e\u0433\u0438 XPath,<\/li>\n<\/ol>\n<p>  <\/p>\n<p>\u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u0441 \u0447\u0435\u043c \u0438\u0445 \u0435\u0434\u044f\u0442: <\/p>\n<p>  <\/p>\n<ol>\n<li>\n<p><strong>Data bind<\/strong> \u0441\u0430\u043c\u044b\u0439 \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u044b\u0439 \u0438 \u043f\u0440\u043e\u0441\u0442\u043e\u0439 \u0441\u043f\u043e\u0441\u043e\u0431, \u0432\u044b \u043f\u0440\u043e\u0441\u0442\u043e \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442\u0435 \u043a\u043b\u0430\u0441\u0441, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043d\u0443\u0436\u043d\u043e \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u0442\u044c \u0432 json, \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0447\u0430\u0441\u0442\u044c \u043f\u043e\u043b\u0435\u0439 \u043e\u0442\u043c\u0435\u0447\u0430\u0435\u0442\u0435 \u0430\u043d\u043d\u043e\u0442\u0430\u0446\u0438\u044f\u043c\u0438 (\u0430 \u0437\u0430\u0447\u0430\u0441\u0442\u0443\u044e \u0434\u0430\u0436\u0435 \u044d\u0442\u043e \u043d\u0435\u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e), \u0430 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430 \u0441\u0430\u043c\u0430 \u043f\u0440\u0435\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u044d\u0442\u043e\u0442 \u043a\u043b\u0430\u0441\u0441 \u0438 \u0432\u0441\u044e \u0435\u0433\u043e \u0438\u0435\u0440\u0430\u0440\u0445\u0438\u044e \u043a\u043b\u0430\u0441\u0441\u043e\u0432 \u0432 json. \u0410\u043d\u0430\u043b\u043e\u0433\u043e\u043c \u043f\u0440\u0438 \u0440\u0430\u0431\u043e\u0442\u0435 \u0441 xml \u0431\u0443\u0434\u0435\u0442 JAXB (Java Architecture for XML Binding)<br \/>  <strong>\u041f\u043b\u044e\u0441\u044b<\/strong>: \u043d\u0430\u0438\u0431\u043e\u043b\u0435\u0435 \u043f\u0440\u043e\u0441\u0442\u043e\u0439 \u0438\u0437 \u0432\u0441\u0435\u0445, \u043f\u043e \u0441\u0443\u0442\u0438 \u0433\u043b\u0430\u0432\u043d\u043e\u0435 \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u0442\u043e\u043b\u044c\u043a\u043e Java \u043a\u043b\u0430\u0441\u0441\u044b, \u0431\u043e\u043b\u0435\u0435 \u0442\u043e\u0433\u043e \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u043e\u0441\u0442\u043e \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c Java \u043a\u043b\u0430\u0441\u0441\u044b \u0438\u0437 json&#8217;a \u0438\u043b\u0438 json \u0441\u0445\u0435\u043c\u044b.<br \/>  <strong>\u041c\u0438\u043d\u0443\u0441\u044b<\/strong>: \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c \u0438 \u043f\u0430\u043c\u044f\u0442\u044c. \u0411\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u043e \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 \u0440\u0435\u0444\u043b\u0435\u043a\u0441\u0438\u044e \u0438 \u0442.\u043f. \u043c\u0435\u0442\u043e\u0434\u044b \u0440\u0430\u0431\u043e\u0442\u044b \u0441 Java \u043a\u043b\u0430\u0441\u0441\u0430\u043c\u0438 (\u0445\u043e\u0442\u044f \u043d\u0435 \u0432\u0441\u0435), \u0447\u0442\u043e \u043e\u0447\u0435\u0432\u0438\u0434\u043d\u043e \u043d\u0435 \u043e\u0447\u0435\u043d\u044c \u0431\u044b\u0441\u0442\u0440\u043e. \u041a \u0442\u043e\u043c\u0443 \u0436\u0435, \u0432\u0435\u0441\u044c json \u0444\u0430\u0439\u043b \u0441\u0440\u0430\u0437\u0443 \u043f\u0440\u0435\u0432\u0440\u0430\u0449\u0430\u0435\u0442\u0441\u044f \u0432 Java \u043e\u0431\u044a\u0435\u043a\u0442\u044b, \u0447\u0442\u043e \u043c\u043e\u0436\u0435\u0442 \u043f\u0440\u043e\u0441\u0442\u043e \u0438\u0441\u0447\u0435\u0440\u043f\u0430\u0442\u044c \u0432\u0441\u044e \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u0443\u044e \u043f\u0430\u043c\u044f\u0442\u044c, \u0435\u0441\u043b\u0438 \u0432\u044b \u043f\u043e\u043f\u044b\u0442\u0430\u0435\u0442\u0435\u0441\u044c \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u043e\u0447\u0435\u043d\u044c \u0431\u043e\u043b\u044c\u0448\u043e\u0439 json.<br \/>  <strong>\u0412\u044b\u0432\u043e\u0434<\/strong>: \u0435\u0441\u043b\u0438 \u043d\u0435\u0442 \u043f\u0440\u043e\u0431\u043b\u0435\u043c \u0441 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c\u044e, \u043f\u0430\u043c\u044f\u0442\u044c\u044e \u0438 \u0432\u044b \u043d\u0435 \u0441\u043e\u0431\u0438\u0440\u0430\u0435\u0442\u0435\u0441\u044c \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0442\u044c \u043c\u043d\u043e\u0433\u043e\u0433\u0438\u0433\u0430\u0431\u0430\u0439\u0442\u043d\u044b\u0435 json&#8217;\u044b \u0441\u043a\u043e\u0440\u0435\u0435 \u0432\u0441\u0435\u0433\u043e \u0441\u0430\u043c\u044b\u0439 \u043b\u0443\u0447\u0448\u0438\u0439 \u0441\u043f\u043e\u0441\u043e\u0431.<\/p>\n<p>  <\/li>\n<li>\n<p><strong>Tree Model<\/strong> \u2014 \u0434\u0430\u043d\u043d\u044b\u0439 \u043f\u0430\u0440\u0441\u0435\u0440 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 json \u0432 \u0432\u0438\u0434\u0435 Java \u043a\u043b\u0430\u0441\u0441\u043e\u0432 \u0442\u0430\u043a\u0438\u0445 \u043a\u0430\u043a Node \u0438\u043b\u0438 JsonElement c \u0438\u0435\u0440\u0430\u0440\u0445\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u043e\u0439, \u0430 \u0443\u0436\u0435 \u0441\u0430\u043c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442 \u0438\u0445 \u043e\u0431\u0445\u043e\u0434\u0438\u0442 \u0438 \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442 \u0438\u0437 \u043d\u0438\u0445 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e. \u0414\u0430\u043d\u043d\u044b\u0439 \u0441\u043f\u043e\u0441\u043e\u0431 \u043f\u043e\u0445\u043e\u0436 \u043d\u0430 DOM \u043f\u0430\u0440\u0441\u0435\u0440\u044b \u0432 xml.<br \/>  <strong>\u041f\u043b\u044e\u0441\u044b<\/strong>: \u043e\u0431\u044b\u0447\u043d\u043e \u0431\u044b\u0441\u0442\u0440\u0435\u0435 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u0441\u043f\u043e\u0441\u043e\u0431\u0430 \u0438 \u043f\u0440\u043e\u0449\u0435 \u0442\u0440\u0435\u0442\u044c\u0435\u0433\u043e,<br \/>  <strong>\u041c\u0438\u043d\u0443\u0441\u044b<\/strong>: \u0443\u0441\u0442\u0443\u043f\u0430\u0435\u0442 <strong>Data bind<\/strong> \u043f\u043e \u043f\u0440\u043e\u0441\u0442\u043e\u0442\u0435, \u043f\u043b\u044e\u0441 \u0440\u044f\u0434 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a \u0441\u043f\u043e\u0441\u043e\u0431\u0435\u043d \u0433\u0435\u043d\u0435\u0440\u0438\u0442\u044c \u043a\u043b\u0430\u0441\u0441\u044b \u043f\u0440\u0438 <strong>Data bind<\/strong>, \u0430 \u043d\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0440\u0435\u0444\u043b\u0435\u043a\u0441\u0438\u044e, \u0432 \u044d\u0442\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0442\u043e \u0447\u0442\u043e <strong>Tree Model<\/strong> \u0431\u0443\u0434\u0435\u0442 \u0431\u044b\u0441\u0442\u0440\u0435\u0435 \u043d\u0435 \u043e\u0447\u0435\u0432\u0438\u0434\u043d\u043e, \u043a \u0442\u043e\u043c\u0443 \u0436\u0435 \u043d\u0435 \u0440\u0435\u0448\u0430\u0435\u0442\u0441\u044f \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430 \u043e\u0433\u0440\u043e\u043c\u043d\u044b\u0445 \u0444\u0430\u0439\u043b\u043e\u0432 \u0438 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f \u043f\u0430\u043c\u044f\u0442\u0438.<\/p>\n<p>  <\/li>\n<li>\n<p><strong>Streaming API<\/strong> \u2014 \u0441\u0430\u043c\u044b\u0439 \u043d\u0438\u0437\u043a\u043e\u0443\u0440\u043e\u0432\u043d\u0435\u0432\u044b\u0439 \u0441\u043f\u043e\u0441\u043e\u0431, \u043f\u043e \u0441\u0443\u0442\u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442 \u0441\u0430\u043c \u0432\u0440\u0443\u0447\u043d\u0443\u044e \u0440\u0430\u0437\u0431\u0438\u0440\u0430\u0435\u0442 \u0442\u043e\u043a\u0435\u043d\u044b json&#8217;a. \u0417\u0430\u0442\u043e \u043d\u0438\u043a\u0430\u043a\u0438\u0445 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0439 \u043f\u043e \u043f\u0430\u043c\u044f\u0442\u0438 \u0438 \u0432 \u0442\u0435\u043e\u0440\u0438\u0438 \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u0430\u044f \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c.<br \/>  <strong>\u041f\u043b\u044e\u0441\u044b<\/strong>: \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0438 \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0435 \u043f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u0435 \u043f\u0430\u043c\u044f\u0442\u0438,<br \/>  <strong>\u041c\u0438\u043d\u0443\u0441\u044b<\/strong>: \u0441\u043b\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f,<\/p>\n<p>  <\/li>\n<li><strong>\u0410\u043d\u0430\u043b\u043e\u0433\u0438 XPath<\/strong> \u2014 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0441\u043f\u043e\u0441\u043e\u0431, \u043d\u0435 \u043e\u0447\u0435\u043d\u044c \u043f\u043e\u0434\u0445\u043e\u0434\u0438\u0442, \u0435\u0441\u043b\u0438 \u043d\u0443\u0436\u043d\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u0442 \u0432\u0441\u044e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u0438\u0437 json&#8217;a, \u0437\u0430\u0442\u043e \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u043d\u0430\u043f\u0438\u0441\u0430\u0432 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0435 <code>$.store.book[*].author<\/code> \u0438 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0441\u043f\u0438\u0441\u043e\u043a \u0432\u0441\u0435\u0445 \u0430\u0432\u0442\u043e\u0440\u043e\u0432 \u0432\u0441\u0435\u0445 \u043a\u043d\u0438\u0433 \u0438\u0437 json&#8217;a \u043c\u0430\u0433\u0430\u0437\u0438\u043d\u0430. \u0422\u043e \u0435\u0441\u0442\u044c \u043b\u0435\u0433\u043a\u043e \u043f\u043e\u043b\u0443\u0447\u0430\u0442\u044c \u0447\u0430\u0441\u0442\u044c \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u0438\u0437 json&#8217;\u0430.<br \/>  <strong>\u041f\u043b\u044e\u0441\u044b<\/strong>: \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0431\u044b\u0441\u0442\u0440\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u0438\u0437 json&#8217;\u0430 \u043f\u043e \u0441\u043b\u043e\u0436\u043d\u044b\u043c \u043a\u0440\u0438\u0442\u0435\u0440\u0438\u044f\u043c,<br \/>  <strong>\u041c\u0438\u043d\u0443\u0441\u044b<\/strong>: \u043d\u0435 \u043e\u0447\u0435\u043d\u044c \u043f\u043e\u0434\u0445\u043e\u0434\u0438\u0442, \u043a\u043e\u0433\u0434\u0430 \u043d\u0443\u0436\u043d\u0430 \u0432\u0441\u0435 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u0438\u0437 json&#8217;\u0430, \u043d\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0432 \u043e\u0431\u0440\u0430\u0442\u043d\u0443\u044e \u0441\u0442\u043e\u0440\u043e\u043d\u0443 \u043d\u0430 \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f json&#8217;\u043e\u0432,<\/li>\n<\/ol>\n<p>  <\/p>\n<h3>1.1 \u041e\u0431\u0437\u043e\u0440 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a<\/h3>\n<p>  <\/p>\n<table>\n<thead>\n<tr>\n<th>\u0421\u043f\u043e\u0441\u043e\u0431<\/th>\n<th><a href=\"https:\/\/github.com\/alibaba\/fastjson\">Fastjson <\/a><\/th>\n<th><a href=\"https:\/\/github.com\/google\/gson\">Gson<\/a><\/th>\n<th><a href=\"https:\/\/github.com\/bluelinelabs\/LoganSquare\">LoganSquare<\/a><\/th>\n<th><a href=\"https:\/\/github.com\/stleary\/JSON-java\">JSON java<\/a><\/th>\n<th><a href=\"https:\/\/github.com\/square\/moshi\">Moshi<\/a><\/th>\n<th><a href=\"https:\/\/github.com\/Instagram\/ig-json-parser\">Ig json parser<\/a><\/th>\n<th><a href=\"http:\/\/wiki.fasterxml.com\/JacksonHome\">Jackson<\/a><\/th>\n<th><a href=\"http:\/\/owlike.github.io\/genson\/\">Genson<\/a><\/th>\n<th><a href=\"https:\/\/github.com\/jayway\/JsonPath\">JsonPath<\/a><\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>1. Data bind<\/td>\n<td><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\/3.8-json\/fastjson\">\u0414\u0430 <\/a><\/td>\n<td><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\/3.8-json\/gson\">\u0414\u0430<\/a><\/td>\n<td><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\/3.8-json\/logansquare\">\u0414\u0430<\/a><\/td>\n<td>&#8212;<\/td>\n<td><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\/3.8-json\/moshi\">\u0414\u0430<\/a><\/td>\n<td><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\/3.8-json\/ig_json_parser\">\u0414\u0430<\/a><\/td>\n<td><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\/3.8-json\/jackson\">\u0414\u0430<\/a><\/td>\n<td><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\/3.8-json\/genson\">\u0414\u0430<\/a><\/td>\n<td>&#8212;<\/td>\n<\/tr>\n<tr>\n<td>2. Tree Model<\/td>\n<td>&#8212;<\/td>\n<td><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/blob\/master\/helloworlds\/3.8-json\/gson\/src\/main\/java\/gson\/advanced\/TreeModel.java\">\u0414\u0430 <\/a><\/td>\n<td>&#8212;<\/td>\n<td><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\/3.8-json\/json_java\">\u0414\u0430<\/a><\/td>\n<td>&#8212;<\/td>\n<td>&#8212;<\/td>\n<td><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/blob\/master\/helloworlds\/3.8-json\/jackson\/src\/main\/java\/jackson\/advanced\/TreeModel.java\">\u0414\u0430<\/a><\/td>\n<td>&#8212;<\/td>\n<td>&#8212;<\/td>\n<\/tr>\n<tr>\n<td>3. Streaming API<\/td>\n<td>&#8212;<\/td>\n<td><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/blob\/master\/helloworlds\/3.8-json\/gson\/src\/main\/java\/gson\/advanced\/StreamingAPI.java\">\u0414\u0430 <\/a><\/td>\n<td>&#8212;<\/td>\n<td>&#8212;<\/td>\n<td>&#8212;<\/td>\n<td>&#8212;<\/td>\n<td><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/blob\/master\/helloworlds\/3.8-json\/jackson\/src\/main\/java\/jackson\/advanced\/StreamingAPI.java\">\u0414\u0430<\/a><\/td>\n<td>&#8212;<\/td>\n<td>&#8212;<\/td>\n<\/tr>\n<tr>\n<td>4. \u0410\u043d\u0430\u043b\u043e\u0433\u0438 XPath<\/td>\n<td><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/blob\/master\/helloworlds\/3.8-json\/fastjson\/src\/main\/java\/fastjson\/JsonPathHelloWorld.java\">\u0414\u0430<\/a><\/td>\n<td>&#8212;<\/td>\n<td>&#8212;<\/td>\n<td>&#8212;<\/td>\n<td>&#8212;<\/td>\n<td>&#8212;<\/td>\n<td>&#8212;<\/td>\n<td>&#8212;<\/td>\n<td><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\/3.8-json\/json_path\">\u0414\u0430<\/a><\/td>\n<\/tr>\n<tr>\n<td>5. \u0413\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f \u043a\u043b\u0430\u0441\u0441\u043e\u0432 \u0434\u043b\u044f Data bind*<\/td>\n<td>&#8212;<\/td>\n<td>&#8212;<\/td>\n<td><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\/3.8-json\/logansquare\">\u0414\u0430<\/a><\/td>\n<td>&#8212;<\/td>\n<td>&#8212;<\/td>\n<td><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\/3.8-json\/ig_json_parser\">\u0414\u0430<\/a><\/td>\n<td>&#8212;<\/td>\n<td>&#8212;<\/td>\n<td>&#8212;<\/td>\n<\/tr>\n<tr>\n<td>6. Github&#8217;s star<\/td>\n<td>4851<\/td>\n<td>4120<\/td>\n<td>2188<\/td>\n<td>1937<\/td>\n<td>1732<\/td>\n<td>921<\/td>\n<td>881<\/td>\n<td>108<\/td>\n<td>849<\/td>\n<\/tr>\n<tr>\n<td>7. \u0420\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0441\u043e static inner class**<\/td>\n<td><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\/3.8-json\/fastjson\">\u0414\u0430<\/a><\/td>\n<td><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\/3.8-json\/gson\">\u0414\u0430<\/a><\/td>\n<td><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\/3.8-json\/logansquare\">\u041d\u0435\u0442<\/a><\/td>\n<td>&#8212;<\/td>\n<td><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\/3.8-json\/moshi\">\u0414\u0430<\/a><\/td>\n<td><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\/3.8-json\/ig_json_parser\">\u041d\u0435\u0442<\/a><\/td>\n<td><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\/3.8-json\/jackson\">\u0414\u0430<\/a><\/td>\n<td><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\/3.8-json\/genson\">\u0414\u0430<\/a><\/td>\n<td>&#8212;<\/td>\n<\/tr>\n<tr>\n<td>8. \u041e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0430\u043d\u043d\u043e\u0442\u0430\u0446\u0438\u0439***<\/td>\n<td><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\/3.8-json\/fastjson\">\u041d\u0435\u0442<\/a><\/td>\n<td><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\/3.8-json\/gson\">\u041d\u0435\u0442<\/a><\/td>\n<td><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\/3.8-json\/logansquare\">\u0414\u0430<\/a><\/td>\n<td>&#8212;<\/td>\n<td><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\/3.8-json\/moshi\">\u041d\u0435\u0442<\/a><\/td>\n<td><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\/3.8-json\/ig_json_parser\">\u0414\u0430<\/a><\/td>\n<td><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\/3.8-json\/jackson\">\u041d\u0435\u0442<\/a><\/td>\n<td><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\/3.8-json\/genson\">\u041d\u0435\u0442<\/a><\/td>\n<td>&#8212;<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>  <\/p>\n<p>\u041f\u043e \u0441\u0441\u044b\u043b\u043a\u0430\u043c \u043d\u0430 <strong>\u0414\u0430<\/strong> \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u0439\u0442\u0438 \u043f\u0440\u0438\u043c\u0435\u0440\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f.<br \/>  <code>*<\/code> \u2014 \u0413\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f \u043a\u043b\u0430\u0441\u0441\u043e\u0432 \u0434\u043b\u044f Data bind \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043a\u043b\u0430\u0441\u0441\u044b \u043d\u0430 \u0441\u0442\u0430\u0434\u0438\u0438 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0446\u0438\u0438, \u0447\u0442\u043e \u0432 \u0442\u0435\u043e\u0440\u0438\u0438 \u0434\u043e\u043b\u0436\u043d\u043e \u0434\u0430\u0432\u0430\u0442\u044c \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u043f\u0440\u0438\u0440\u043e\u0441\u0442 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438,<br \/>  <code>**<\/code> \u2014 \u0420\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0441\u043e static inner class \u0438\u043c\u0435\u0435\u0442 \u0441\u043c\u044b\u0441\u043b \u0442\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u0441\u043b\u0443\u0447\u0430\u044f Data bind, \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u043b\u0438 \u0441\u0435\u0440\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0438 \u0434\u0435\u0441\u0435\u0440\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0434\u043b\u044f \u0441\u043b\u0443\u0447\u0430\u044f \u0441\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0445 \u043a\u043b\u0430\u0441\u0441\u043e\u0432 (\u043d\u0435 \u0441\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0435 \u043a\u043b\u0430\u0441\u0441\u044b \u0441\u0435\u0440\u0438\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u043d\u0435 \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u0435\u0442\u0441\u044f),<br \/>  <code>***<\/code> \u2014 \u0442\u043e\u0436\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u0441\u043b\u0443\u0447\u0430\u044f Data bind \u043c\u043e\u0436\u043d\u043e \u043b\u0438 \u043d\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0430\u043d\u043d\u043e\u0442\u0430\u0446\u0438\u0438 \u0438\u043b\u0438 \u0438\u0445 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u043a\u0440\u0430\u0439\u043d\u0435 \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u0435\u0442\u0441\u044f,<\/p>\n<p>  <\/p>\n<h3>1.2 \u041f\u0440\u043e\u0441\u0442\u0435\u0439\u0448\u0438\u0435 \u043f\u0440\u0438\u043c\u0435\u0440\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 Data bind<\/h3>\n<p>  <\/p>\n<p>\u0414\u043b\u044f \u0434\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u0440\u0430\u0431\u043e\u0442\u044b \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a \u0431\u0443\u0434\u0435\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 json: <\/p>\n<p>  <\/p>\n<pre><code class=\"javascript\">jsonString = {   &quot;message&quot;: &quot;Hi&quot;,   &quot;place&quot;: {     &quot;name&quot;: &quot;World&quot;   } }<\/code><\/pre>\n<p>  <\/p>\n<p>\u0418 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 Java \u043a\u043b\u0430\u0441\u0441\u044b (\u0432 \u0440\u0430\u0437\u043d\u044b\u0445 \u043f\u0440\u0438\u043c\u0435\u0440\u0430\u0445 \u043c\u043e\u0433\u0443\u0442 \u0441\u043b\u0435\u0433\u043a\u0430 \u043e\u0442\u043b\u0438\u0447\u0430\u0442\u044c\u0441\u044f \u043d\u0430\u043b\u0438\u0447\u0438\u0435\u043c \u0430\u043d\u043d\u043e\u0442\u0430\u0446\u0438\u0439, \u0435\u0441\u043b\u0438 \u043e\u043d\u0438 \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u044b):<\/p>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">Java \u043a\u043b\u0430\u0441\u0441\u044b<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"java\">    class Human {         private String message;         private Place place;          public String getMessage() {             return message;         }          public void setMessage(String message) {             this.message = message;         }          public Place getPlace() {             return place;         }          public void setPlace(Place place) {             this.place = place;         }          public void say() {             System.out.println();             System.out.println(getMessage() + &quot; , &quot; + getPlace().getName() + &quot;!&quot;);         }     }      class Place {         private String name;          public String getName() {             return name;         }          public void setName(String name) {             this.name = name;         }     }<\/code><\/pre>\n<p>  <\/p>\n<pre><code>    \/\/ init class     Place place = new Place();     place.setName(&quot;World&quot;);      Human human = new Human();     human.setMessage(&quot;Hi&quot;);     human.setPlace(place);<\/code><\/pre>\n<\/div>\n<\/div>\n<p>  <\/p>\n<p>\u041a\u0430\u043a \u043c\u043e\u0436\u043d\u043e \u0443\u0432\u0438\u0434\u0435\u0442\u044c, Java \u043a\u043b\u0430\u0441\u0441\u044b \u0432\u0441\u0435\u0433\u043e \u043b\u0438\u0448\u044c \u0441\u043e\u0441\u0442\u043e\u044f\u0442\u044c \u0438\u0437 \u0434\u0432\u0443\u0445 \u043a\u043b\u0430\u0441\u0441\u043e\u0432 Human \u0438 Place, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0445\u0440\u0430\u043d\u0438\u0442\u044c\u0441\u044f \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 Hi World!.. Json \u0442\u043e\u0436\u0435 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u044d\u0442\u0438 \u0434\u0432\u0430 \u0432\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0445 \u043e\u0431\u044a\u0435\u043a\u0442\u0430.<\/p>\n<p>  <\/p>\n<table>\n<thead>\n<tr>\n<th><strong>\u041f\u0440\u0438\u043c\u0435\u0440\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f (Data bind)<\/strong>:<br \/>  \u0421\u043f\u043e\u0441\u043e\u0431<\/th>\n<th><a href=\"https:\/\/github.com\/alibaba\/fastjson\">Fastjson <\/a><\/th>\n<th><a href=\"https:\/\/github.com\/google\/gson\">Gson<\/a><\/th>\n<th><a href=\"https:\/\/github.com\/bluelinelabs\/LoganSquare\">LoganSquare<\/a><\/th>\n<th><a href=\"https:\/\/github.com\/square\/moshi\">Moshi<\/a><\/th>\n<th><a href=\"https:\/\/github.com\/Instagram\/ig-json-parser\">Ig json parser<\/a><\/th>\n<th><a href=\"http:\/\/wiki.fasterxml.com\/JacksonHome\">Jackson<\/a><\/th>\n<th><a href=\"http:\/\/owlike.github.io\/genson\/\">Genson<\/a><\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>\u0418\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f<\/td>\n<td>&#8212;<\/td>\n<td><code>Gson gson = new Gson()<\/code><\/td>\n<td>&#8212;<\/td>\n<td><code>Moshi moshi = new Moshi.<\/code><br \/>  <code>Builder().build(); JsonAdapter&lt;Human&gt;<\/code><br \/>  <code>jsonAdapter = moshi.adapter(Human.class)<\/code><\/td>\n<td>&#8212;<\/td>\n<td><code>ObjectMapper mapper = new ObjectMapper()<\/code><\/td>\n<td><code>Genson genson = new Genson()<\/code><\/td>\n<\/tr>\n<tr>\n<td>\u0418\u0437 Java \u0432 json<\/td>\n<td><code>JSON.toJSONString(human)<\/code><\/td>\n<td><code>gson.toJson(human)<\/code><\/td>\n<td><code>LoganSquare.serialize(human)<\/code><\/td>\n<td><code>jsonAdapter.toJson(human)<\/code><\/td>\n<td><code>Human__JsonHelper.serializeToJson(human)<\/code><\/td>\n<td><code>mapper.writeValueAsString(human)<\/code><\/td>\n<td><code>genson.serialize(human)<\/code><\/td>\n<\/tr>\n<tr>\n<td>\u0418\u0437 json \u0432 Java<\/td>\n<td><code>JSON.parseObject(jsonString, Human.class)<\/code><\/td>\n<td><code>gson.fromJson(jsonString, Human.class)<\/code><\/td>\n<td><code>LoganSquare.parse(jsonString, Human.class)<\/code><\/td>\n<td><code>jsonAdapter.fromJson(jsonString)<\/code><\/td>\n<td><code>Human__JsonHelper.parseFromJson(jsonString)<\/code><\/td>\n<td><code>mapper.readValue(jsonString, Human.class)<\/code><\/td>\n<td><code>genson.deserialize(jsonString, Human.class)<\/code><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>  <\/p>\n<p>Human__JsonHelper \u2014 \u044d\u0442\u043e \u043a\u043b\u0430\u0441\u0441 \u043a\u043e\u0442\u043e\u0440\u044b\u0439 Ig json parser \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u043b \u043d\u0430 \u044d\u0442\u0430\u043f\u0435 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0446\u0438\u0438, \u0443 LoganSquare \u0442\u0430\u043a \u0436\u0435 \u0435\u0441\u0442\u044c \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u043d\u0430 \u044d\u0442\u0430\u043f\u0435 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0446\u0438\u0438, \u043d\u043e \u0442\u0430\u043c \u043a\u043b\u0430\u0441\u0441\u044b \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u044e\u0442\u0441\u044f &quot;\u043f\u043e\u0434 \u043a\u0430\u043f\u043e\u0442\u043e\u043c&quot; \u0432\u043d\u0443\u0442\u0440\u0438 LoganSquare.<\/p>\n<p>  <\/p>\n<p>\u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043f\u0440\u0438\u043c\u0435\u0440\u044b \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u0435\u0435.<\/p>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">Fastjson<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"java\">        \/\/ convert to json         String jsonString = JSON.toJSONString(human);         System.out.println(&quot;json &quot; + jsonString); \/\/  \u043d\u0430\u043f\u0435\u0447\u0430\u0442\u0430\u0435\u0442  &quot;json {&quot;message&quot;:&quot;Hi&quot;,&quot;place&quot;:{&quot;name&quot;:&quot;World&quot;}}&quot;          \/\/ convert from json         Human newHuman = JSON.parseObject(jsonString, Human.class);         newHuman.say(); \/\/  \u043d\u0430\u043f\u0435\u0447\u0430\u0442\u0430\u0435\u0442  &quot;Hi , World!&quot;<\/code><\/pre>\n<p>  <\/p>\n<p><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/blob\/master\/helloworlds\/3.8-json\/fastjson\/src\/main\/java\/fastjson\/FastJsonHelloWorld.java\">\u041f\u043e\u0434\u0440\u043e\u0431\u043d\u044b\u0439 \u043f\u0440\u0438\u043c\u0435\u0440<\/a><\/p>\n<\/div>\n<\/div>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">Gson<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"java\">        \/\/ convert to json         Gson gson = new Gson();         String jsonString = gson.toJson(human);         System.out.println(&quot;json &quot; + jsonString); \/\/  \u043d\u0430\u043f\u0435\u0447\u0430\u0442\u0430\u0435\u0442  &quot;json {&quot;message&quot;:&quot;Hi&quot;,&quot;place&quot;:{&quot;name&quot;:&quot;World&quot;}}&quot;          \/\/ convert from json         Human newHuman = gson.fromJson(jsonString, Human.class);         newHuman.say(); \/\/  \u043d\u0430\u043f\u0435\u0447\u0430\u0442\u0430\u0435\u0442  &quot;Hi , World!&quot; <\/code><\/pre>\n<p>  <\/p>\n<p><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/blob\/master\/helloworlds\/3.8-json\/gson\/src\/main\/java\/gson\/GsonHelloWorld.java\">\u041f\u043e\u0434\u0440\u043e\u0431\u043d\u044b\u0439 \u043f\u0440\u0438\u043c\u0435\u0440<\/a><\/p>\n<\/div>\n<\/div>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">LoganSquare<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"java\">@JsonObject public class Human {     @JsonField(name=&quot;message&quot;)     public String message;     @JsonField(name=&quot;place&quot;)     public Place place;         ....          \/\/ convert to json         String jsonString = LoganSquare.serialize(human);         System.out.println(&quot;json &quot; + jsonString); \/\/ \u043d\u0430\u043f\u0435\u0447\u0430\u0442\u0430\u0435\u0442 &quot;json {&quot;place&quot;:{&quot;name&quot;:&quot;World&quot;},&quot;message&quot;:&quot;Hi&quot;}&quot;          \/\/ convert from json         Human newHuman = LoganSquare.parse(jsonString, Human.class);         newHuman.say(); \/\/ \u043d\u0430\u043f\u0435\u0447\u0430\u0442\u0430\u0435\u0442 &quot;Hi , World!&quot; <\/code><\/pre>\n<p>  <\/p>\n<p><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\/3.8-json\/logansquare\/src\/main\/java\/logansquare\">\u041f\u043e\u0434\u0440\u043e\u0431\u043d\u044b\u0439 \u043f\u0440\u0438\u043c\u0435\u0440<\/a><\/p>\n<\/div>\n<\/div>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">Moshi<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"java\">        \/\/ convert to json         Moshi moshi = new Moshi.Builder().build();         JsonAdapter&lt;Human&gt; jsonAdapter = moshi.adapter(Human.class);          String jsonString = jsonAdapter.toJson(human);         System.out.println(&quot;json &quot; + jsonString); \/\/ \u043d\u0430\u043f\u0435\u0447\u0430\u0442\u0430\u0435\u0442  &quot;json {&quot;message&quot;:&quot;Hi&quot;,&quot;place&quot;:{&quot;name&quot;:&quot;World&quot;}}&quot;          \/\/ convert from json         Human newHuman = jsonAdapter.fromJson(jsonString);         newHuman.say(); \/\/  \u043d\u0430\u043f\u0435\u0447\u0430\u0442\u0430\u0435\u0442 &quot;Hi , World!&quot; <\/code><\/pre>\n<p>  <\/p>\n<p><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/blob\/master\/helloworlds\/3.8-json\/moshi\/src\/main\/java\/moshi\/MoshiHelloWorld.java\">\u041f\u043e\u0434\u0440\u043e\u0431\u043d\u044b\u0439 \u043f\u0440\u0438\u043c\u0435\u0440<\/a><\/p>\n<\/div>\n<\/div>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">Ig json parser<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"java\">@JsonType public class Human {     @JsonField(fieldName=&quot;message&quot;)     public String message;     @JsonField(fieldName=&quot;place&quot;)     public Place place;          ...          \/\/ convert to json         String jsonString = Human__JsonHelper.serializeToJson(human);         System.out.println(&quot;json &quot; + jsonString); \/\/ \u043d\u0430\u043f\u0435\u0447\u0430\u0442\u0430\u0435\u0442  &quot;json {&quot;place&quot;:{&quot;name&quot;:&quot;World&quot;},&quot;message&quot;:&quot;Hi&quot;}&quot;          \/\/ convert from json         Human newHuman = Human__JsonHelper.parseFromJson(jsonString);         newHuman.say(); \/\/  \u043d\u0430\u043f\u0435\u0447\u0430\u0442\u0430\u0435\u0442 &quot;Hi , World!&quot;<\/code><\/pre>\n<p>  <\/p>\n<p><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\/3.8-json\/ig_json_parser\/src\/main\/java\/ig_json_parser\">\u041f\u043e\u0434\u0440\u043e\u0431\u043d\u044b\u0439 \u043f\u0440\u0438\u043c\u0435\u0440<\/a><\/p>\n<\/div>\n<\/div>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">Jackson<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"java\">        \/\/ convert to json         ObjectMapper mapper = new ObjectMapper();         String jsonString = mapper.writeValueAsString(human);         System.out.println(&quot;json &quot; + jsonString); \/\/  \u043d\u0430\u043f\u0435\u0447\u0430\u0442\u0430\u0435\u0442  &quot;json {&quot;message&quot;:&quot;Hi&quot;,&quot;place&quot;:{&quot;name&quot;:&quot;World&quot;}}&quot;          \/\/ convert from json         Human newHuman = mapper.readValue(jsonString, Human.class);         newHuman.say(); \/\/  \u043d\u0430\u043f\u0435\u0447\u0430\u0442\u0430\u0435\u0442 &quot;Hi , World!&quot;<\/code><\/pre>\n<p>  <\/p>\n<p><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/blob\/master\/helloworlds\/3.8-json\/jackson\/src\/main\/java\/jackson\/JacksonHelloWorld.java\">\u041f\u043e\u0434\u0440\u043e\u0431\u043d\u044b\u0439 \u043f\u0440\u0438\u043c\u0435\u0440<\/a><\/p>\n<\/div>\n<\/div>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">Genson<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"java\">        \/\/ convert to json         String jsonString = new Genson().serialize(human);          System.out.println(&quot;json &quot; + jsonString); \/\/ \u043d\u0430\u043f\u0435\u0447\u0430\u0442\u0430\u0435\u0442  &quot;json {&quot;message&quot;:&quot;Hi&quot;,&quot;place&quot;:{&quot;name&quot;:&quot;World&quot;}}&quot;          \/\/ convert from json         Human newHuman =  new Genson().deserialize(jsonString, Human.class);         newHuman.say(); \/\/  \u043d\u0430\u043f\u0435\u0447\u0430\u0442\u0430\u0435\u0442  &quot;Hi , World!&quot;<\/code><\/pre>\n<p>  <\/p>\n<p><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/blob\/master\/helloworlds\/3.8-json\/genson\/src\/main\/java\/genson\/GensonHelloWorld.java\">\u041f\u043e\u0434\u0440\u043e\u0431\u043d\u044b\u0439 \u043f\u0440\u0438\u043c\u0435\u0440<\/a><\/p>\n<\/div>\n<\/div>\n<p>  <\/p>\n<p>\u0414\u043b\u044f \u0438\u0437\u0443\u0447\u0435\u043d\u0438\u044f \u0431\u043e\u043b\u0435\u0435 \u0441\u043b\u043e\u0436\u043d\u044b\u0445 \u043f\u0440\u0438\u043c\u0435\u0440\u043e\u0432 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a \u0441\u043c. \u0440\u0430\u0437\u0434\u0435\u043b \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f \u0438 \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f java \u043a\u043b\u0430\u0441\u0441\u043e\u0432 \u0438\u0437 json. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044e \u043c\u043e\u0436\u043d\u043e \u0431\u044b\u0441\u0442\u0440\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u043d\u0443\u0436\u043d\u044b\u0435 java \u043a\u043b\u0430\u0441\u0441\u044b \u0441\u043e \u0432\u0441\u0435\u043c\u0438 \u0430\u043d\u043d\u043e\u0442\u0430\u0446\u0438\u044f\u043c\u0438 \u0434\u043b\u044f \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a jackson \u0438\u043b\u0438 gson.<\/p>\n<p>  <\/p>\n<h3>1.3 \u041f\u0440\u043e\u0441\u0442\u0435\u0439\u0448\u0438\u0435 \u043f\u0440\u0438\u043c\u0435\u0440\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 Tree Model<\/h3>\n<p>  <\/p>\n<p>\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 Tree Model \u0435\u0441\u0442\u044c \u0443 \u0442\u0440\u0435\u0445 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a: Gson, Jackson \u0438 Json Java. \u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u0438\u0445 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044e. <\/p>\n<p>  <\/p>\n<p>\u0414\u043b\u044f \u0434\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u0440\u0430\u0431\u043e\u0442\u044b \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a \u0431\u0443\u0434\u0435\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0442\u043e\u0442 \u0436\u0435 json: <\/p>\n<p>  <\/p>\n<pre><code class=\"javascript\">jsonString = {   &quot;message&quot;: &quot;Hi&quot;,   &quot;place&quot;: {     &quot;name&quot;: &quot;World&quot;   } }<\/code><\/pre>\n<p>  <\/p>\n<p>\u041c\u0435\u0442\u043e\u0434\u044b \u043f\u0430\u0440\u0441\u0438\u043d\u0433\u0430 json&#8217;a:<\/p>\n<p>  <\/p>\n<table>\n<thead>\n<tr>\n<th>\u0414\u0435\u0439\u0441\u0442\u0432\u0438\u0435<\/th>\n<th><a href=\"https:\/\/github.com\/google\/gson\">Gson<\/a><\/th>\n<th><a href=\"http:\/\/wiki.fasterxml.com\/JacksonHome\">Jackson<\/a><\/th>\n<th><a href=\"https:\/\/github.com\/stleary\/JSON-java\">JSON java<\/a><\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>\u0418\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f<\/td>\n<td><code>JsonParser parser = new JsonParser()<\/code><\/td>\n<td><code>new ObjectMapper()<\/code><\/td>\n<td>&#8212;<\/td>\n<\/tr>\n<tr>\n<td>\u041f\u0430\u0440\u0441\u0438\u043d\u0433 json&#8217;a<\/td>\n<td><code>parser.parse(&lt;\u0441\u0442\u0440\u043e\u043a\u0430&gt;)<\/code><\/td>\n<td><code>mapper.readValue(&lt;\u0441\u0442\u0440\u043e\u043a\u0430&gt;, JsonNode.class)<\/code><\/td>\n<td><code>new JSONObject(&lt;\u0441\u0442\u0440\u043e\u043a\u0430&gt;)<\/code><\/td>\n<\/tr>\n<tr>\n<td>\u041f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u0433\u043b\u0430\u0432\u043d\u043e\u0433\u043e \u043e\u0431\u044a\u0435\u043a\u0442\u0430<\/td>\n<td><code>root.getAsJsonObject()<\/code><\/td>\n<td>&#8212;<\/td>\n<td>&#8212;<\/td>\n<\/tr>\n<tr>\n<td>\u041f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u0441\u0442\u0440\u043e\u043a\u0438<\/td>\n<td><code>root.get(&lt;\u0438\u043c\u044f&gt;).getAsString()<\/code><\/td>\n<td><code>root.get(&lt;\u0438\u043c\u044f&gt;).asText()<\/code><\/td>\n<td><code>root.getString(&lt;\u0438\u043c\u044f&gt;)<\/code><\/td>\n<\/tr>\n<tr>\n<td>\u041f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u0434\u043e\u0447\u0435\u0440\u043d\u0435\u0433\u043e \u043e\u0431\u044a\u0435\u043a\u0442\u0430<\/td>\n<td><code>root.getAsJsonObject(&lt;\u0438\u043c\u044f&gt;)<\/code><\/td>\n<td><code>root.get(&lt;\u0438\u043c\u044f&gt;)<\/code><\/td>\n<td><code>root.getJSONObject(&lt;\u0438\u043c\u044f&gt;)<\/code><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>  <\/p>\n<p>\u041c\u0435\u0442\u043e\u0434\u044b \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 json&#8217;a:<\/p>\n<p>  <\/p>\n<table>\n<thead>\n<tr>\n<th>\u0414\u0435\u0439\u0441\u0442\u0432\u0438\u0435<\/th>\n<th><a href=\"https:\/\/github.com\/google\/gson\">Gson<\/a><\/th>\n<th><a href=\"http:\/\/wiki.fasterxml.com\/JacksonHome\">Jackson<\/a><\/th>\n<th><a href=\"https:\/\/github.com\/stleary\/JSON-java\">JSON java<\/a><\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>\u0418\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f<\/td>\n<td>&#8212;<\/td>\n<td><code>new ObjectMapper()<\/code><\/td>\n<td>&#8212;<\/td>\n<\/tr>\n<tr>\n<td>\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0433\u043b\u0430\u0432\u043d\u043e\u0433\u043e \u043e\u0431\u044a\u0435\u043a\u0442\u0430<\/td>\n<td><code>new JsonObject()<\/code><\/td>\n<td><code>mapper.createObjectNode()<\/code><\/td>\n<td><code>new JSONObject()<\/code><\/td>\n<\/tr>\n<tr>\n<td>\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0441\u0442\u0440\u043e\u043a\u043e\u0432\u043e\u0435 \u043f\u043e\u043b\u0435<\/td>\n<td><code>root.addProperty(&lt;\u0438\u043c\u044f&gt;, &lt;\u0441\u0442\u0440\u043e\u043a\u0430&gt;)<\/code><\/td>\n<td><code>root.put(&lt;\u0438\u043c\u044f&gt;, &lt;\u0441\u0442\u0440\u043e\u043a\u0430&gt;)<\/code><\/td>\n<td><code>root.put(&lt;\u0438\u043c\u044f&gt;, &lt;\u0441\u0442\u0440\u043e\u043a\u0430&gt;)<\/code><\/td>\n<\/tr>\n<tr>\n<td>\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0434\u043e\u0447\u0435\u0440\u043d\u0438\u0439 \u043e\u0431\u044a\u0435\u043a\u0442<\/td>\n<td><code>root.add(&lt;\u0438\u043c\u044f&gt;, &lt;\u043e\u0431\u044a\u0435\u043a\u0442&gt;);<\/code><\/td>\n<td><code>root.putObject(&lt;\u0438\u043c\u044f&gt;)<\/code><\/td>\n<td><code>root.put(&lt;\u0438\u043c\u044f&gt;, &lt;\u043e\u0431\u044a\u0435\u043a\u0442&gt;)<\/code><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>  <\/p>\n<p>\u041f\u0440\u0438\u043c\u0435\u0440\u044b: <\/p>\n<p>  <\/p>\n<p>1) \u0427\u0442\u0435\u043d\u0438\u0435 Gson<\/p>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u0427\u0442\u0435\u043d\u0438\u0435 json \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e Gson<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"java\">        JsonParser parser = new JsonParser();         JsonElement jsonElement = parser.parse(&quot;{\\&quot;message\\&quot;:\\&quot;Hi\\&quot;,\\&quot;place\\&quot;:{\\&quot;name\\&quot;:\\&quot;World!\\&quot;}}&quot;);          JsonObject rootObject = jsonElement.getAsJsonObject(); \/\/ \u0447\u0442\u0435\u043d\u0438\u0435 \u0433\u043b\u0430\u0432\u043d\u043e\u0433\u043e \u043e\u0431\u044a\u0435\u043a\u0442\u0430         String message = rootObject.get(&quot;message&quot;).getAsString(); \/\/ \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u043f\u043e\u043b\u0435 &quot;message&quot; \u043a\u0430\u043a \u0441\u0442\u0440\u043e\u043a\u0443         JsonObject childObject = rootObject.getAsJsonObject(&quot;place&quot;); \/\/ \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u043e\u0431\u044a\u0435\u043a\u0442 Place          String place = childObject.get(&quot;name&quot;).getAsString(); \/\/ \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u043f\u043e\u043b\u0435 &quot;name&quot;         System.out.println(message + &quot; &quot; + place); \/\/ \u043d\u0430\u043f\u0435\u0447\u0430\u0442\u0430\u0435\u0442 &quot;Hi World!&quot;*\/<\/code><\/pre>\n<p>  <\/p>\n<p><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/blob\/master\/helloworlds\/3.8-json\/gson\/src\/main\/java\/gson\/advanced\/TreeModel.java\">\u041f\u043e\u0434\u0440\u043e\u0431\u043d\u044b\u0439 \u043f\u0440\u0438\u043c\u0435\u0440<\/a><\/p>\n<\/div>\n<\/div>\n<p>  <\/p>\n<p>2) \u0413\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f Gson<\/p>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u0413\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f json \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e Gson<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"java\">        JsonObject rootObject = new JsonObject(); \/\/ \u0441\u043e\u0437\u0434\u0430\u0435\u043c \u0433\u043b\u0430\u0432\u043d\u044b\u0439 \u043e\u0431\u044a\u0435\u043a\u0442         rootObject.addProperty(&quot;message&quot;, &quot;Hi&quot;); \/\/ \u0437\u0430\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u043c \u0442\u0435\u043a\u0441\u0442 \u0432 \u043f\u043e\u043b\u0435 &quot;message&quot;         JsonObject childObject = new JsonObject(); \/\/ \u0441\u043e\u0437\u0434\u0430\u0435\u043c \u043e\u0431\u044a\u0435\u043a\u0442 Place         childObject.addProperty(&quot;name&quot;, &quot;World!&quot;); \/\/ \u0437\u0430\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u043c \u0442\u0435\u043a\u0441\u0442 \u0432 \u043f\u043e\u043b\u0435 &quot;name&quot; \u0443 \u043e\u0431\u044a\u0435\u043a\u0442 Place         rootObject.add(&quot;place&quot;, childObject); \/\/ \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u0435\u043c \u0434\u043e\u0447\u0435\u0440\u043d\u0438\u0439 \u043e\u0431\u044a\u0435\u043a\u0442 \u0432 \u043f\u043e\u043b\u0435 &quot;place&quot;          Gson gson = new Gson();         String json = gson.toJson(rootObject); \/\/ \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f json \u0441\u0442\u0440\u043e\u043a\u0438         System.out.println(json); \/\/ \u043d\u0430\u043f\u0435\u0447\u0430\u0442\u0430\u0435\u0442 &quot;{&quot;message&quot;:&quot;Hi&quot;,&quot;place&quot;:{&quot;name&quot;:&quot;World!&quot;}}&quot;<\/code><\/pre>\n<p>  <\/p>\n<p><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/blob\/master\/helloworlds\/3.8-json\/gson\/src\/main\/java\/gson\/advanced\/TreeModel.java\">\u041f\u043e\u0434\u0440\u043e\u0431\u043d\u044b\u0439 \u043f\u0440\u0438\u043c\u0435\u0440<\/a><\/p>\n<\/div>\n<\/div>\n<p>  <\/p>\n<p>3) \u0427\u0442\u0435\u043d\u0438\u0435 Jackson<\/p>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u0427\u0442\u0435\u043d\u0438\u0435 json \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e Jackson<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"java\">        ObjectMapper mapper = new ObjectMapper();         JsonNode rootNode = mapper.readValue(&quot;{\\&quot;message\\&quot;:\\&quot;Hi\\&quot;,\\&quot;place\\&quot;:{\\&quot;name\\&quot;:\\&quot;World!\\&quot;}}&quot;, JsonNode.class); \/\/ \u043f\u0430\u0440\u0441\u0438\u043d\u0433 \u0442\u0435\u043a\u0441\u0442\u0430         String message = rootNode.get(&quot;message&quot;).asText(); \/\/ \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u0441\u0442\u0440\u043e\u043a\u0438 \u0438\u0437 \u043f\u043e\u043b\u044f &quot;message&quot;         JsonNode childNode =  rootNode.get(&quot;place&quot;); \/\/ \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u043c \u043e\u0431\u044a\u0435\u043a\u0442 Place         String place = childNode.get(&quot;name&quot;).asText(); \/\/ \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u043c \u0441\u0442\u0440\u043e\u043a\u0443 \u0438\u0437 \u043f\u043e\u043b\u044f &quot;name&quot;         System.out.println(message + &quot; &quot; + place); \/\/ \u043d\u0430\u043f\u0435\u0447\u0430\u0442\u0430\u0435\u0442 &quot;Hi World!&quot;<\/code><\/pre>\n<p>  <\/p>\n<p><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/blob\/master\/helloworlds\/3.8-json\/jackson\/src\/main\/java\/jackson\/advanced\/TreeModel.java\">\u041f\u043e\u0434\u0440\u043e\u0431\u043d\u044b\u0439 \u043f\u0440\u0438\u043c\u0435\u0440<\/a><\/p>\n<\/div>\n<\/div>\n<p>  <\/p>\n<p>4) \u0413\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f Jackson<\/p>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u0413\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f json \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e Jackson<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"java\">        OutputStream outputStream = new ByteArrayOutputStream();          ObjectMapper mapper = new ObjectMapper();         ObjectNode rootNode = mapper.createObjectNode(); \/\/ \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0433\u043b\u0430\u0432\u043d\u043e\u0433\u043e \u043e\u0431\u044a\u0435\u043a\u0442\u0430         rootNode.put(&quot;message&quot;, &quot;Hi&quot;);         ObjectNode childNode = rootNode.putObject(&quot;place&quot;); \/\/ \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0434\u043e\u0447\u0435\u0440\u043d\u0435\u0433\u043e \u043e\u0431\u044a\u0435\u043a\u0442\u0430 Place         childNode.put(&quot;name&quot;, &quot;World!&quot;);         mapper.writeValue(outputStream, childNode); \/\/ \u0437\u0430\u043f\u0438\u0441\u044c json \u0441\u0442\u0440\u043e\u043a\u0438 \u0432 \u0441\u0442\u0440\u0438\u043c          System.out.println(outputStream.toString()); \/\/ \u043d\u0430\u043f\u0435\u0447\u0430\u0442\u0430\u0435\u0442 &quot;{&quot;message&quot;:&quot;Hi&quot;,&quot;place&quot;:{&quot;name&quot;:&quot;World!&quot;}}&quot;<\/code><\/pre>\n<p>  <\/p>\n<p><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/blob\/master\/helloworlds\/3.8-json\/jackson\/src\/main\/java\/jackson\/advanced\/TreeModel.java\">\u041f\u043e\u0434\u0440\u043e\u0431\u043d\u044b\u0439 \u043f\u0440\u0438\u043c\u0435\u0440<\/a><\/p>\n<\/div>\n<\/div>\n<p>  <\/p>\n<p>5) \u0427\u0442\u0435\u043d\u0438\u0435 \u0438 \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f Json Java<br \/>  \u0418 Json Java (\u044d\u0442\u0430\u043b\u043e\u043d\u043d\u0430\u044f \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u043e\u0442 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u0430 json), \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 JSONObject<\/p>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u0427\u0442\u0435\u043d\u0438\u0435 \u0438 \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f json \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e Json Java<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"java\">        \/\/ convert Java to json         JSONObject root = new JSONObject(); \/\/ \u0441\u043e\u0437\u0434\u0430\u0435\u043c \u0433\u043b\u0430\u0432\u043d\u044b\u0439 \u043e\u0431\u044a\u0435\u043a\u0442         root.put(&quot;message&quot;, &quot;Hi&quot;);         JSONObject place = new JSONObject(); \/\/ \u0441\u043e\u0437\u0434\u0430\u0435\u043c \u043e\u0431\u044a\u0435\u043a\u0442 Place         place.put(&quot;name&quot;, &quot;World!&quot;);         root.put(&quot;place&quot;, place); \/\/ \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u0435\u043c \u043e\u0431\u044a\u0435\u043a\u0442 Place \u0432 \u043f\u043e\u043b\u0435 place         String json = root.toString();         System.out.println(json); \/\/ \u043d\u0430\u043f\u0435\u0447\u0430\u0442\u0430\u0435\u0442 &quot;{&quot;message&quot;:&quot;Hi&quot;,&quot;place&quot;:{&quot;name&quot;:&quot;World!&quot;}}&quot;          System.out.println();         \/\/ convert json to Java         JSONObject jsonObject = new JSONObject(json);  \/\/ \u043f\u0430\u0440\u0441\u0438\u043d\u0433 json         String message = jsonObject.getString(&quot;message&quot;);         String name = jsonObject.getJSONObject(&quot;place&quot;).getString(&quot;name&quot;);         System.out.println(message + &quot; &quot; + name); \/\/ \u043d\u0430\u043f\u0435\u0447\u0430\u0442\u0430\u0435\u0442 &quot;Hi World!&quot;<\/code><\/pre>\n<p>  <\/p>\n<p><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\/3.8-json\/json_java\">\u041f\u043e\u0434\u0440\u043e\u0431\u043d\u044b\u0439 \u043f\u0440\u0438\u043c\u0435\u0440<\/a><\/p>\n<\/div>\n<\/div>\n<p>  <\/p>\n<p>\u0412 \u043e\u0431\u0449\u0435\u043c, \u043c\u043e\u0436\u043d\u043e \u0437\u0430\u043c\u0435\u0442\u0438\u0442\u044c \u0447\u0442\u043e \u0432\u043e \u0432\u0441\u0435\u0445 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430\u0445 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u044e\u0442\u0441\u044f \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e \u0442\u0435 \u0436\u0435 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f, \u043e\u0442\u043b\u0438\u0447\u0430\u044e\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u044f \u043a\u043b\u0430\u0441\u0441\u043e\u0432.<\/p>\n<p>  <\/p>\n<h3>1.4 \u041f\u0440\u043e\u0441\u0442\u0435\u0439\u0448\u0438\u0435 \u043f\u0440\u0438\u043c\u0435\u0440\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 Streaming API<\/h3>\n<p>  <\/p>\n<p>\u0414\u043b\u044f \u0434\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u0440\u0430\u0431\u043e\u0442\u044b \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a \u0431\u0443\u0434\u0435\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0432\u0441\u0435 \u0442\u043e\u0442 \u0436\u0435 json: <\/p>\n<p>  <\/p>\n<pre><code class=\"javascript\">jsonString = {   &quot;message&quot;: &quot;Hi&quot;,   &quot;place&quot;: {     &quot;name&quot;: &quot;World&quot;   } }<\/code><\/pre>\n<p>  <\/p>\n<p>\u041e\u0431\u044b\u0447\u043d\u043e Streaming API \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u043a\u0440\u0430\u0439\u043d\u0435 \u0440\u0435\u0434\u043a\u043e, \u0442\u043e\u043b\u044c\u043a\u043e \u0432 \u0437\u0430\u0434\u0430\u0447\u0430\u0445 \u0442\u0440\u0435\u0431\u0443\u044e\u0449\u0438\u0445 \u043e\u0447\u0435\u043d\u044c \u0432\u044b\u0441\u043e\u043a\u043e\u0439 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0438\u043b\u0438 \u043f\u0440\u0438 \u043e\u0447\u0435\u043d\u044c \u0431\u043e\u043b\u044c\u0448\u0438\u0445 \u0444\u0430\u0439\u043b\u0430\u0445.<\/p>\n<p>  <\/p>\n<p>\u041c\u0435\u0442\u043e\u0434\u044b \u043f\u0430\u0440\u0441\u0438\u043d\u0433\u0430 json&#8217;a:<\/p>\n<p>  <\/p>\n<table>\n<thead>\n<tr>\n<th>\u0414\u0435\u0439\u0441\u0442\u0432\u0438\u0435<\/th>\n<th><a href=\"https:\/\/github.com\/google\/gson\">Gson<\/a><\/th>\n<th><a href=\"http:\/\/wiki.fasterxml.com\/JacksonHome\">Jackson<\/a><\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>\u0418\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f<\/td>\n<td>&#8212;<\/td>\n<td><code>new JsonFactory()<\/code><\/td>\n<\/tr>\n<tr>\n<td>\u041f\u0430\u0440\u0441\u0438\u043d\u0433 json&#8217;a<\/td>\n<td><code>reader = new JsonReader((&lt;input_stream&gt;)<\/code><\/td>\n<td><code>parser = jsonFactory.createParser(&lt;\u0441\u0442\u0440\u043e\u043a\u0430&gt;)<\/code><\/td>\n<\/tr>\n<tr>\n<td>\u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u0435\u0441\u0442\u044c \u043b\u0438 \u0435\u0449\u0451 \u0442\u043e\u043a\u0435\u043d\u044b<\/td>\n<td><code>reader.hasNext()<\/code><\/td>\n<td><code>parser.hasCurrentToken()<\/code><\/td>\n<\/tr>\n<tr>\n<td>\u041f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u0442\u0438\u043f\u0430 \u0442\u043e\u043a\u0435\u043d\u0430<\/td>\n<td><code>reader.peek()<\/code><\/td>\n<td><code>parser.nextToken()<\/code><\/td>\n<\/tr>\n<tr>\n<td>\u041f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0433\u043e \u0442\u043e\u043a\u0435\u043d\u0430<\/td>\n<td><code>reader.nextString()<\/code><br \/>  <code>reader.beginObject()<\/code><br \/>  <code>reader.endObject()<\/code> \u0438 \u0442.\u043f.<\/td>\n<td><code>parser.nextToken()<\/code><\/td>\n<\/tr>\n<tr>\n<td>\u041f\u0440\u043e\u043f\u0443\u0441\u043a \u0442\u043e\u043a\u0435\u043d\u0430<\/td>\n<td><code>reader.skipValue()<\/code><\/td>\n<td><code>parser.nextToken()<\/code><\/td>\n<\/tr>\n<tr>\n<td>\u041f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u0441\u0442\u0440\u043e\u043a\u0438<\/td>\n<td><code>reader.nextString()<\/code><\/td>\n<td><code>parser.getText()<\/code><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>  <\/p>\n<p>\u041c\u0435\u0442\u043e\u0434\u044b \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 json&#8217;a:<\/p>\n<p>  <\/p>\n<table>\n<thead>\n<tr>\n<th>\u0414\u0435\u0439\u0441\u0442\u0432\u0438\u0435<\/th>\n<th><a href=\"https:\/\/github.com\/google\/gson\">Gson<\/a><\/th>\n<th><a href=\"http:\/\/wiki.fasterxml.com\/JacksonHome\">Jackson<\/a><\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>\u0418\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f<\/td>\n<td>writer = new JsonWriter(&lt;output_stream&gt;)<\/td>\n<td><code>generator = new JsonFactory().createGenerator(&lt;output_stream&gt;, &lt;\u043a\u043e\u0434\u0438\u0440\u043e\u0432\u043a\u0430&gt;)<\/code><\/td>\n<\/tr>\n<tr>\n<td>\u0422\u043e\u043a\u0435\u043d \u043d\u0430\u0447\u0430\u043b\u0430 \u043e\u0431\u044a\u0435\u043a\u0442\u0430<\/td>\n<td><code>writer.beginObject()<\/code><\/td>\n<td><code>generator.writeStartObject()<\/code><\/td>\n<\/tr>\n<tr>\n<td>\u0422\u043e\u043a\u0435\u043d \u043e\u043a\u043e\u043d\u0447\u0430\u043d\u0438\u044f \u043e\u0431\u044a\u0435\u043a\u0442\u0430<\/td>\n<td><code>writer.endObject()<\/code><\/td>\n<td><code>generator.writeEndObject()<\/code><\/td>\n<\/tr>\n<tr>\n<td>\u0422\u043e\u043a\u0435\u043d \u0438\u043c\u0435\u043d\u0438 \u043f\u043e\u043b\u044f<\/td>\n<td><code>writer.name(&lt;\u0438\u043c\u044f&gt;)<\/code><\/td>\n<td><code>generator.writeFieldName(&lt;\u0438\u043c\u044f&gt;)<\/code><\/td>\n<\/tr>\n<tr>\n<td>\u0422\u043e\u043a\u0435\u043d \u0441\u0442\u0440\u043e\u043a\u043e\u0432\u043e\u0433\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f<\/td>\n<td><code>writer.value(&lt;\u0441\u0442\u0440\u043e\u043a\u0430&gt;)<\/code><\/td>\n<td><code>generator.writeStringField(&lt;\u0438\u043c\u044f&gt;, &lt;\u0441\u0442\u0440\u043e\u043a\u0430&gt;)<\/code><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>  <\/p>\n<p>\u041f\u0440\u0438\u043c\u0435\u0440\u044b:<\/p>\n<p>  <\/p>\n<p>1) \u0427\u0442\u0435\u043d\u0438\u0435 \u0432 Gson<\/p>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u0427\u0442\u0435\u043d\u0438\u0435 json c \u043f\u043e\u043c\u043e\u0449\u044c\u044e Gson<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"java\">        String str = &quot;{\\&quot;message\\&quot;:\\&quot;Hi\\&quot;,\\&quot;place\\&quot;:{\\&quot;name\\&quot;:\\&quot;World!\\&quot;}}&quot;;         InputStream in = new ByteArrayInputStream(str.getBytes(Charset.forName(&quot;UTF-8&quot;)));         JsonReader reader = new JsonReader(new InputStreamReader(in, &quot;UTF-8&quot;));         while (reader.hasNext()) { \/\/ \u043e\u0431\u0445\u043e\u0434\u0438\u043c \u0432\u0441\u0435 \u0442\u043e\u043a\u0435\u043d\u044b             JsonToken jsonToken = reader.peek(); \/\/ \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u043c \u0442\u0438\u043f \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0433\u043e \u0442\u043e\u043a\u0435\u043d\u0430             if(jsonToken == JsonToken.BEGIN_OBJECT) { \/\/ \u0435\u0441\u043b\u0438 \u043d\u0430\u0447\u0430\u043b\u043e \u043e\u0431\u044a\u0435\u043a\u0442\u0430                 reader.beginObject();             } else if(jsonToken == JsonToken.END_OBJECT) { \/\/ \u0435\u0441\u043b\u0438 \u043a\u043e\u043d\u0435\u0446 \u043e\u0431\u044a\u0435\u043a\u0442\u0430                 reader.endObject();             } if(jsonToken == JsonToken.STRING) { \/\/ \u0432 \u0441\u043b\u0443\u0447\u0430\u0435 \u0435\u0441\u043b\u0438 \u0442\u043e\u043a\u0435\u043d \u0441\u0442\u0440\u043e\u043a\u043e\u0432\u043e\u0435 \u0437\u043d\u0430\u043d\u0438\u0435 - \u0432\u044b\u0432\u043e\u0434\u0438\u043c \u043d\u0430 \u044d\u043a\u0440\u0430\u043d                  System.out.print(reader.nextString() + &quot; &quot;); \/\/ \u043d\u0430\u043f\u0435\u0447\u0430\u0442\u0430\u0435\u0442 Hi World!             } else {                 reader.skipValue(); \/\/ \u043f\u0440\u043e\u043f\u0443\u0441\u043a\u0430\u0435\u043c \u0432\u0441\u0435 \u043f\u0440\u043e\u0447\u0438\u0435 \u0442\u043e\u043a\u0435\u043d\u044b             }         }         reader.close();<\/code><\/pre>\n<p>  <\/p>\n<p><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/blob\/master\/helloworlds\/3.8-json\/gson\/src\/main\/java\/gson\/advanced\/StreamingAPI.java\">\u041f\u043e\u0434\u0440\u043e\u0431\u043d\u044b\u0439 \u043f\u0440\u0438\u043c\u0435\u0440<\/a><\/p>\n<\/div>\n<\/div>\n<p>  <\/p>\n<p>2) \u0417\u0430\u043f\u0438\u0441\u044c \u0432 Gson<\/p>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u0413\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f json c \u043f\u043e\u043c\u043e\u0449\u044c\u044e Gson<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"java\">        OutputStream outputStream = new ByteArrayOutputStream();         JsonWriter writer = new JsonWriter(new OutputStreamWriter(outputStream, &quot;UTF-8&quot;));         writer.beginObject(); \/\/ \u0441\u043e\u0437\u0434\u0430\u0435\u043c \u0442\u043e\u043a\u0435\u043d \u043d\u0430\u0447\u0430\u043b\u0430 \u0433\u043b\u0430\u0432\u043d\u043e\u0433\u043e \u043e\u0431\u044a\u0435\u043a\u0442\u0430         writer.name(&quot;message&quot;); \/\/ \u0437\u0430\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u043c \u043f\u043e\u043b\u0435 message         writer.value(&quot;Hi&quot;);         writer.name(&quot;place&quot;); \/\/ \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u0435\u043c \u043e\u0431\u044a\u0435\u043a\u0442 Place \u0432 \u043f\u043e\u043b\u0435 place         writer.beginObject(); \/\/ \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u043c \u043e\u0431\u044a\u0435\u043a\u0442 Place         writer.name(&quot;name&quot;);         writer.value(&quot;World!&quot;);         writer.endObject(); \/\/ \u0437\u0430\u043a\u0440\u044b\u0432\u0430\u0435\u043c \u043e\u0431\u044a\u0435\u043a\u0442 Place         writer.endObject(); \/\/ \u0437\u0430\u043a\u0440\u044b\u0432\u0430\u0435\u043c \u0433\u043b\u0430\u0432\u043d\u044b\u0439 \u043e\u0431\u044a\u0435\u043a\u0442         writer.close();         System.out.println(outputStream.toString()); \/\/ \u043d\u0430\u043f\u0435\u0447\u0430\u0442\u0430\u0435\u0442 &quot;{&quot;message&quot;:&quot;Hi&quot;,&quot;place&quot;:{&quot;name&quot;:&quot;World!&quot;}}&quot;<\/code><\/pre>\n<p>  <\/p>\n<p><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/blob\/master\/helloworlds\/3.8-json\/gson\/src\/main\/java\/gson\/advanced\/StreamingAPI.java\">\u041f\u043e\u0434\u0440\u043e\u0431\u043d\u044b\u0439 \u043f\u0440\u0438\u043c\u0435\u0440<\/a><\/p>\n<\/div>\n<\/div>\n<p>  <\/p>\n<p>3) \u0427\u0442\u0435\u043d\u0438\u0435 \u0432 Jackson<\/p>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u0427\u0442\u0435\u043d\u0438\u0435 json c \u043f\u043e\u043c\u043e\u0449\u044c\u044e Jackson<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"java\">        JsonFactory jsonFactory = new JsonFactory();         JsonParser jsonParser = jsonFactory.createParser(&quot;{\\&quot;message\\&quot;:\\&quot;Hi\\&quot;,\\&quot;place\\&quot;:{\\&quot;name\\&quot;:\\&quot;World!\\&quot;}}&quot;);         JsonToken jsonToken = jsonParser.nextToken();         while(jsonParser.hasCurrentToken()) { \/\/ \u043e\u0431\u0445\u043e\u0434\u0438\u043c \u0442\u043e\u043a\u0435\u043d\u044b             if(jsonToken == VALUE_STRING) { \/\/ \u0432 \u0441\u043b\u0443\u0447\u0430\u0435 \u0435\u0441\u043b\u0438 \u0442\u043e\u043a\u0435\u043d \u0441\u0442\u0440\u043e\u043a\u043e\u0432\u043e\u0435 \u0437\u043d\u0430\u043d\u0438\u0435 - \u0432\u044b\u0432\u043e\u0434\u0438\u043c \u043d\u0430 \u044d\u043a\u0440\u0430\u043d                  System.out.print(jsonParser.getText() + &quot; &quot;); \/\/ \u043d\u0430\u043f\u0435\u0447\u0430\u0442\u0430\u0435\u0442 &quot;Hi World!&quot;             }             jsonToken = jsonParser.nextToken();         }<\/code><\/pre>\n<p>  <\/p>\n<p><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/blob\/master\/helloworlds\/3.8-json\/jackson\/src\/main\/java\/jackson\/advanced\/StreamingAPI.java\">\u041f\u043e\u0434\u0440\u043e\u0431\u043d\u044b\u0439 \u043f\u0440\u0438\u043c\u0435\u0440<\/a><\/p>\n<\/div>\n<\/div>\n<p>  <\/p>\n<p>2) \u0417\u0430\u043f\u0438\u0441\u044c \u0432 Jackson<\/p>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u0413\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f json c \u043f\u043e\u043c\u043e\u0449\u044c\u044e Jackson<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"java\">        JsonFactory jsonFactory = new JsonFactory();         OutputStream outputStream = new ByteArrayOutputStream();         JsonGenerator jsonGenerator = jsonFactory.createGenerator(outputStream, JsonEncoding.UTF8);          jsonGenerator.writeStartObject(); \/\/ \u0441\u043e\u0437\u0434\u0430\u0435\u043c \u0442\u043e\u043a\u0435\u043d \u043d\u0430\u0447\u0430\u043b\u0430 \u0433\u043b\u0430\u0432\u043d\u043e\u0433\u043e \u043e\u0431\u044a\u0435\u043a\u0442\u0430         jsonGenerator.writeStringField(&quot;message&quot;, &quot;Hi&quot;); \/\/ \u0441\u043e\u0437\u0434\u0430\u0435\u043c \u043f\u043e\u043b\u0435 message         jsonGenerator.writeFieldName(&quot;place&quot;);         jsonGenerator.writeStartObject(); \/\/ \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u043c \u043e\u0431\u044a\u0435\u043a\u0442 Place         jsonGenerator.writeStringField(&quot;name&quot;, &quot;World!&quot;);         jsonGenerator.writeEndObject(); \/\/ \u0437\u0430\u043a\u0440\u044b\u0432\u0430\u0435\u043c \u043e\u0431\u044a\u0435\u043a\u0442 Place         jsonGenerator.writeEndObject(); \/\/ \u0437\u0430\u043a\u0440\u044b\u0432\u0430\u0435\u043c \u0433\u043b\u0430\u0432\u043d\u044b\u0439 \u043e\u0431\u044a\u0435\u043a\u0442         jsonGenerator.close();         System.out.println(outputStream.toString()); \/\/ \u043d\u0430\u043f\u0435\u0447\u0430\u0442\u0430\u0435\u0442 &quot;{&quot;message&quot;:&quot;Hi&quot;,&quot;place&quot;:{&quot;name&quot;:&quot;World!&quot;}}&quot; <\/code><\/pre>\n<p>  <\/p>\n<p><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/blob\/master\/helloworlds\/3.8-json\/jackson\/src\/main\/java\/jackson\/advanced\/StreamingAPI.java\">\u041f\u043e\u0434\u0440\u043e\u0431\u043d\u044b\u0439 \u043f\u0440\u0438\u043c\u0435\u0440<\/a><\/p>\n<\/div>\n<\/div>\n<p>  <\/p>\n<h3>1.4 \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0430\u043d\u0430\u043b\u043e\u0433\u043e\u0432 XPath \u0434\u043b\u044f json<\/h3>\n<p>  <\/p>\n<p>\u041c\u0435\u0442\u043e\u0434\u044b:<\/p>\n<p>  <\/p>\n<table>\n<thead>\n<tr>\n<th>\u0414\u0435\u0439\u0441\u0442\u0432\u0438\u0435<\/th>\n<th><a href=\"https:\/\/github.com\/jayway\/JsonPath\">JsonPath<\/a><\/th>\n<th><a href=\"https:\/\/github.com\/alibaba\/fastjson\">FastJson<\/a><\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>\u041f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u043f\u043e \u0444\u0438\u043b\u044c\u0442\u0440\u0443<\/td>\n<td><code>JsonPath.read(&lt;json&gt;, &lt;\u0448\u0430\u0431\u043b\u043e\u043d&gt;)<\/code><\/td>\n<td><code>JSONPath.eval(&lt;java_\u043e\u0431\u044a\u0435\u043a\u0442&gt;, &lt;\u0448\u0430\u0431\u043b\u043e\u043d&gt;)<\/code><\/td>\n<\/tr>\n<tr>\n<td>\u041f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u0438 \u043f\u043e \u0444\u0438\u043b\u044c\u0442\u0440\u0443<\/td>\n<td><code>JsonPath.read(&lt;json&gt;, &lt;\u0448\u0430\u0431\u043b\u043e\u043d&gt;)<\/code><\/td>\n<td><code>JSONPath.eval(&lt;java_\u043e\u0431\u044a\u0435\u043a\u0442&gt;, &lt;\u0448\u0430\u0431\u043b\u043e\u043d&gt;)<\/code><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>  <\/p>\n<p>\u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043f\u0440\u0438\u043c\u0435\u0440\u044b, \u0431\u0443\u0434\u0435\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0432\u0441\u0435 \u0442\u043e\u0442 \u0436\u0435 json<\/p>\n<p>  <\/p>\n<pre><code class=\"javascript\">jsonString = {   &quot;message&quot;: &quot;Hi&quot;,   &quot;place&quot;: {     &quot;name&quot;: &quot;World&quot;   } }<\/code><\/pre>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">C \u043f\u043e\u043c\u043e\u0449\u044c\u044e JsonPath<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"java\">        String jsonHiWorld = &quot;{\\&quot;message\\&quot;:\\&quot;Hi\\&quot;,\\&quot;place\\&quot;:{\\&quot;name\\&quot;:\\&quot;World!\\&quot;}}\\&quot;&quot;;          String message = JsonPath.read(jsonHiWorld, &quot;$.message&quot;);         String place = JsonPath.read(jsonHiWorld, &quot;$.place.name&quot;);         System.out.println(message + &quot; &quot; + place); \/\/ \u043d\u0430\u043f\u0435\u0447\u0430\u0442\u0430\u0435\u0442 &quot;Hi World!&quot; <\/code><\/pre>\n<p>  <\/p>\n<p><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\/3.8-json\/json_path\">\u041f\u043e\u0434\u0440\u043e\u0431\u043d\u044b\u0439 \u043f\u0440\u0438\u043c\u0435\u0440<\/a><\/p>\n<\/div>\n<\/div>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">C \u043f\u043e\u043c\u043e\u0449\u044c\u044e FastJson<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"java\">        \/\/ \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0438\u0437 json'a \u0432 Java \u043e\u0431\u044a\u0435\u043a\u0442\u044b         String jsonString = &quot;{\\&quot;message\\&quot;:\\&quot;Hi\\&quot;,\\&quot;place\\&quot;:{\\&quot;name\\&quot;:\\&quot;World!\\&quot;}}\\&quot;&quot;;         Human newHuman = JSON.parseObject(jsonString, Human.class);          \/\/ \u043f\u043e\u0438\u0441\u043a \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u0432 Java \u043e\u0431\u044a\u0435\u043a\u0442\u0430\u0445 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f eval         Object message = JSONPath.eval(newHuman, &quot;$.message&quot;);         Object world = JSONPath.eval(newHuman, &quot;$.place.name&quot;);         System.out.println(message + &quot; &quot; + world); \/\/ print Hi World <\/code><\/pre>\n<p>  <\/p>\n<p><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/blob\/master\/helloworlds\/3.8-json\/fastjson\/src\/main\/java\/fastjson\/JsonPathHelloWorld.java\">\u041f\u043e\u0434\u0440\u043e\u0431\u043d\u044b\u0439 \u043f\u0440\u0438\u043c\u0435\u0440<\/a><\/p>\n<\/div>\n<\/div>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u0411\u043e\u043b\u0435\u0435 \u0441\u043b\u043e\u0436\u043d\u044b\u0439 \u043f\u0440\u0438\u043c\u0435\u0440 \u0441 JsonPath<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"java\">        List&lt;String&gt; authors = JsonPath.read(json, &quot;$.store.book[*].author&quot;);         System.out.println(&quot;authors: &quot; + authors); \/\/ print [&quot;Nigel Rees&quot;,&quot;Evelyn Waugh&quot;,&quot;Herman Melville&quot;,&quot;J. R. R. Tolkien&quot;]          List&lt;Map&lt;String, Object&gt;&gt; expensiveBooks = JsonPath                 .using(Configuration.defaultConfiguration())                 .parse(json)                 .read(&quot;$.store.book[?(@.price &gt; 22)].title&quot;, List.class);          System.out.println(expensiveBooks); \/\/ print [&quot;Hello, Middle-earth! &quot;]     <\/code><\/pre>\n<p>  <\/p>\n<p>\u0433\u0434\u0435 json \u044d\u0442\u043e<\/p>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">json =<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"java\"> String json = &quot;{\\n&quot; +             &quot;    \\&quot;store\\&quot;: {\\n&quot; +             &quot;        \\&quot;book\\&quot;: [\\n&quot; +             &quot;            {\\n&quot; +             &quot;                \\&quot;category\\&quot;: \\&quot;reference\\&quot;,\\n&quot; +             &quot;                \\&quot;author\\&quot;: \\&quot;Nigel Rees\\&quot;,\\n&quot; +             &quot;                \\&quot;title\\&quot;: \\&quot;Sayings of the Century\\&quot;,\\n&quot; +             &quot;                \\&quot;price\\&quot;: 8.95\\n&quot; +             &quot;            },\\n&quot; +             &quot;            {\\n&quot; +             &quot;                \\&quot;category\\&quot;: \\&quot;fiction\\&quot;,\\n&quot; +             &quot;                \\&quot;author\\&quot;: \\&quot;Evelyn Waugh\\&quot;,\\n&quot; +             &quot;                \\&quot;title\\&quot;: \\&quot;Sword of Honour\\&quot;,\\n&quot; +             &quot;                \\&quot;price\\&quot;: 12.99\\n&quot; +             &quot;            },\\n&quot; +             &quot;            {\\n&quot; +             &quot;                \\&quot;category\\&quot;: \\&quot;fiction\\&quot;,\\n&quot; +             &quot;                \\&quot;author\\&quot;: \\&quot;Herman Melville\\&quot;,\\n&quot; +             &quot;                \\&quot;title\\&quot;: \\&quot;Moby Dick\\&quot;,\\n&quot; +             &quot;                \\&quot;isbn\\&quot;: \\&quot;0-553-21311-3\\&quot;,\\n&quot; +             &quot;                \\&quot;price\\&quot;: 8.99\\n&quot; +             &quot;            },\\n&quot; +             &quot;            {\\n&quot; +             &quot;                \\&quot;category\\&quot;: \\&quot;fiction\\&quot;,\\n&quot; +             &quot;                \\&quot;author\\&quot;: \\&quot;J. R. R. Tolkien\\&quot;,\\n&quot; +             &quot;                \\&quot;title\\&quot;: \\&quot;Hello, Middle-earth! \\&quot;,\\n&quot; +             &quot;                \\&quot;isbn\\&quot;: \\&quot;0-395-19395-8\\&quot;,\\n&quot; +             &quot;                \\&quot;price\\&quot;: 22.99\\n&quot; +             &quot;            }\\n&quot; +             &quot;        ],\\n&quot; +             &quot;        \\&quot;bicycle\\&quot;: {\\n&quot; +             &quot;            \\&quot;color\\&quot;: \\&quot;red\\&quot;,\\n&quot; +             &quot;            \\&quot;price\\&quot;: 19.95\\n&quot; +             &quot;        }\\n&quot; +             &quot;    },\\n&quot; +             &quot;    \\&quot;expensive\\&quot;: 10\\n&quot; +             &quot;}&quot;;<\/code><\/pre>\n<\/div>\n<\/div>\n<p>  <\/p>\n<p><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\/3.8-json\/json_path\">\u041f\u043e\u0434\u0440\u043e\u0431\u043d\u044b\u0439 \u043f\u0440\u0438\u043c\u0435\u0440<\/a><\/p>\n<\/div>\n<\/div>\n<p>  <\/p>\n<h2>2. \u0413\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f Java \u043a\u043b\u0430\u0441\u0441\u043e\u0432 \u043f\u043e json \u0441\u0445\u0435\u043c\u0435 \u0438 \u0432\u0430\u043b\u0438\u0434\u0430\u0446\u0438\u044f json<\/h2>\n<p>  <\/p>\n<p>\u041e\u0441\u0442\u0430\u043b\u043e\u0441\u044c \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0432\u043e\u043f\u0440\u043e\u0441\u044b \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 Java \u043a\u043b\u0430\u0441\u0441\u043e\u0432 \u0438 \u0432\u0430\u043b\u0438\u0434\u0430\u0446\u0438\u0438 json. \u0421\u043e\u0432\u0435\u0442\u0443\u044e \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u0434\u0432\u0430 online \u0440\u0435\u0441\u0443\u0440\u0441\u0430: <\/p>\n<p>  <\/p>\n<ol>\n<li><a href=\"http:\/\/www.jsonschema2pojo.org\/\">jsonschema2pojo.org<\/a> \u2014 \u0440\u0435\u0441\u0443\u0440\u0441 \u043e\u0442 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 jsonschema2pojo, \u043e\u043d \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0438\u0437 json&#8217;\u0430 \u0438\u043b\u0438 json \u0441\u0445\u0435\u043c\u044b \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0435 \u043a\u043b\u0430\u0441\u0441\u044b \u0434\u043b\u044f \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a Jackson (\u043f\u0435\u0440\u0432\u043e\u0439 \u0438 \u0432\u0442\u043e\u0440\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0438) \u0438 Gson \u0441\u043e \u0432\u0441\u0435\u043c\u0438 \u0430\u043d\u043d\u043e\u0442\u0430\u0446\u0438\u044f\u043c\u0438. \u041e\u0447\u0435\u043d\u044c \u0443\u0434\u043e\u0431\u043d\u044b\u0439 \u0440\u0435\u0441\u0443\u0440\u0441 \u0434\u043b\u044f \u0431\u044b\u0441\u0442\u0440\u043e\u0433\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u044d\u0442\u0438\u0445 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a, \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0442\u043e\u043b\u044c\u043a\u043e \u0438\u043c\u0435\u0442\u044c \u043f\u0440\u0438\u043c\u0435\u0440 json&#8217;\u0430 \u0438\u043b\u0438 json \u0441\u0445\u0435\u043c\u044b.<\/li>\n<li><a href=\"http:\/\/json-schema-validator.herokuapp.com\/\">json-schema-validator.herokuapp.com<\/a> \u2014 \u0440\u0435\u0441\u0443\u0440\u0441 \u043e\u0442 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432 json-schema-validator. \u041e\u043d \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c json \u0441\u0445\u0435\u043c\u0443, \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c java \u043a\u043b\u0430\u0441\u0441\u044b \u043f\u043e \u0441\u0445\u0435\u043c\u0435 \u0438 \u0442.\u0434.<\/li>\n<\/ol>\n<p>  <\/p>\n<p>\u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u044d\u0442\u0438\u0445 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a \u0432 Java \u043a\u043e\u0434\u0435.<\/p>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u041f\u0440\u0438\u043c\u0435\u0440 \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 Java \u043a\u043b\u0430\u0441\u0441\u043e\u0432 \u0438\u0437 json&#39;\u0430 (\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f jsonschema2pojo)<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"java\">        \/\/ Init json         String source = &quot;{\\n&quot; +                 &quot;  \\&quot;type\\&quot;:\\&quot;object\\&quot;,\\n&quot; +                 &quot;  \\&quot;properties\\&quot;: {\\n&quot; +                 &quot;    \\&quot;messageHiWorld\\&quot;: {\\n&quot; +                 &quot;      \\&quot;type\\&quot;: \\&quot;string\\&quot;\\n&quot; +                 &quot;    },\\n&quot; +                 &quot;    \\&quot;bar\\&quot;: {\\n&quot; +                 &quot;      \\&quot;type\\&quot;: \\&quot;integer\\&quot;\\n&quot; +                 &quot;    },\\n&quot; +                 &quot;    \\&quot;baz\\&quot;: {\\n&quot; +                 &quot;      \\&quot;type\\&quot;: \\&quot;boolean\\&quot;\\n&quot; +                 &quot;    }\\n&quot; +                 &quot;  }\\n&quot; +                 &quot;}&quot;;          \/\/ Init config         JCodeModel codeModel = new JCodeModel();          GenerationConfig config = new DefaultGenerationConfig() {             @Override             public boolean isGenerateBuilders() { \/\/ set config option by overriding method                 return true;             }         };          \/\/ Generate Java POJO from json         SchemaMapper mapper = new SchemaMapper(new RuleFactory(config, new Jackson2Annotator(), new SchemaStore()), new SchemaGenerator());         mapper.generate(codeModel, &quot;HelloWorldClass&quot;, &quot;com.github.vedenin&quot;, source);          \/\/ Save generated class to file         File directory = new File(&quot;helloworlds\/3.8-json\/jsonschema2pojo\/output&quot;);         directory.mkdirs();         codeModel.build(directory);          \/\/ Show generated class         File cls = new File(&quot;helloworlds\/3.8-json\/jsonschema2pojo\/output\/com\/github\/vedenin\/HelloWorldClass.java&quot;);         String codeHelloWorld = Files.toString(cls, Charsets.UTF_8);         System.out.println(codeHelloWorld); <\/code><\/pre>\n<p>  <\/p>\n<p><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\/3.8-json\/jsonschema2pojo\">\u041f\u043e\u0434\u0440\u043e\u0431\u043d\u044b\u0439 \u043f\u0440\u0438\u043c\u0435\u0440<\/a><\/p>\n<\/div>\n<\/div>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u041f\u0440\u0438\u043c\u0435\u0440 \u0432\u0430\u043b\u0438\u0434\u0430\u0446\u0438\u0438 json \u0444\u0430\u0439\u043b\u043e\u0432 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u0441\u0445\u0435\u043c\u0435  (\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f json-schema-validator)<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"java\">        final JsonNode fstabSchema = Utils.loadResource(&quot;\/fstab.json&quot;);         final JsonNode good = Utils.loadResource(&quot;\/fstab-good.json&quot;);         final JsonNode bad = Utils.loadResource(&quot;\/fstab-bad.json&quot;);         final JsonNode bad2 = Utils.loadResource(&quot;\/fstab-bad2.json&quot;);          final JsonSchemaFactory factory = JsonSchemaFactory.byDefault();          final JsonSchema schema = factory.getJsonSchema(fstabSchema);          ProcessingReport report;          report = schema.validate(good);         System.out.println(report);          report = schema.validate(bad);         System.out.println(report);          report = schema.validate(bad2);         System.out.println(report);<\/code><\/pre>\n<p>  <\/p>\n<p><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\/3.8-json\/json_schema_validator\">\u041f\u043e\u0434\u0440\u043e\u0431\u043d\u044b\u0439 \u043f\u0440\u0438\u043c\u0435\u0440<\/a><\/p>\n<\/div>\n<\/div>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u041f\u0440\u0438\u043c\u0435\u0440 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f maven plugin \u0434\u043b\u044f \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u043a\u043b\u0430\u0441\u0441\u043e\u0432 \u043f\u043e \u0441\u0445\u0435\u043c\u0435 json (\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f jsonschema2pojo)<\/b><\/p>\n<div class=\"spoiler_text\">\n<p>1) \u0412 maven \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u043c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u043a\u043e\u0434, \u043c\u0435\u043d\u044f\u044f sourceDirectory (\u0433\u0434\u0435 \u043b\u0435\u0436\u0430\u0442 \u0441\u0445\u0435\u043c\u044b json) \u0438 targetPackage (\u043f\u0430\u043a\u0435\u0442 \u0443 \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u044b\u0445 \u043a\u043b\u0430\u0441\u0441\u043e\u0432)<\/p>\n<p>  <\/p>\n<pre><code class=\"xml\">   &lt;build&gt;         &lt;plugins&gt;             &lt;plugin&gt;                 &lt;groupId&gt;org.jsonschema2pojo&lt;\/groupId&gt;                 &lt;artifactId&gt;jsonschema2pojo-maven-plugin&lt;\/artifactId&gt;                 &lt;version&gt;0.4.22&lt;\/version&gt;                 &lt;configuration&gt; ```${basedir}\/src\/main\/resources&lt;\/sourceDirectory&gt;                     &lt;targetPackage&gt;com.github.vedenin&lt;\/targetPackage&gt;                 &lt;\/configuration&gt;                 &lt;executions&gt;                     &lt;execution&gt;                         &lt;goals&gt;                             &lt;goal&gt;generate&lt;\/goal&gt;                         &lt;\/goals&gt;                     &lt;\/execution&gt;                 &lt;\/executions&gt;             &lt;\/plugin&gt;         &lt;\/plugins&gt;     &lt;\/build&gt;<\/code><\/pre>\n<p>  <\/p>\n<p>2) \u041f\u043e\u043b\u043e\u0436\u0438\u0442\u044c \u043d\u0443\u0436\u043d\u044b\u0435 \u0441\u0445\u0435\u043c\u044b json \u0432 sourceDirectory<br \/>  3) \u041f\u043e\u0441\u043b\u0435 \u0437\u0430\u043f\u0443\u0441\u043a\u0430 install maven&#8217;a \u043f\u043e \u0432\u0441\u0435\u043c \u0441\u0445\u0435\u043c\u0430\u043c \u0431\u0443\u0434\u0443\u0442 \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u044b Java \u043a\u043b\u0430\u0441\u0441\u044b. <\/p>\n<p>  <\/p>\n<p><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/blob\/master\/helloworlds\/3.8-json\/jsonschema2pojo\/pom.xml\">\u041f\u043e\u0434\u0440\u043e\u0431\u043d\u044b\u0439 \u043f\u0440\u0438\u043c\u0435\u0440<\/a><\/p>\n<\/div>\n<\/div>\n<p>  <\/p>\n<h2>3. \u0414\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f<\/h2>\n<p>  <\/p>\n<p><strong>\u0414\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f \u0432\u0441\u0435\u0445 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a<\/strong>:<\/p>\n<p>  <\/p>\n<h5>JSON \u043f\u0430\u0440\u0441\u0435\u0440\u044b<\/h5>\n<p>  <\/p>\n<ol>\n<li><a href=\"https:\/\/github.com\/alibaba\/fastjson\">Alibaba Fastjson<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/google\/gson\/blob\/master\/UserGuide.md\">Gson<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/bluelinelabs\/LoganSquare#usage\">LoganSquare<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/stleary\/JSON-java\">JSON java<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/square\/moshi#moshi\">Square Moshi<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/Instagram\/ig-json-parser#getting-started\">Instagram Ig json parser<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/FasterXML\/jackson-docs\">Jackson<\/a><\/li>\n<li><a href=\"http:\/\/owlike.github.io\/genson\/Documentation\/UserGuide\/\">Genson<\/a><\/li>\n<\/ol>\n<p>  <\/p>\n<h5>\u0410\u043d\u0430\u043b\u043e\u0433 XPath \u0434\u043b\u044f JSON<\/h5>\n<p>  <\/p>\n<ol>\n<li><a href=\"https:\/\/github.com\/jayway\/JsonPath#getting-started\">Jayway JsonPath<\/a> <\/li>\n<li><a href=\"https:\/\/github.com\/alibaba\/fastjson\">Alibaba Fastjson<\/a><\/li>\n<\/ol>\n<p>  <\/p>\n<h5>\u0413\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f Java \u043a\u043b\u0430\u0441\u0441\u043e\u0432 \u0438\u0437 JSON \u0438\u043b\u0438 JSON \u0441\u0445\u0435\u043c\u044b \u0438 JSON \u0432\u0430\u043b\u0438\u0434\u0430\u0446\u0438\u044f<\/h5>\n<p>  <\/p>\n<ol>\n<li><a href=\"https:\/\/github.com\/joelittlejohn\/jsonschema2pojo\/wiki\/Getting-Started\">Jsonschema2pojo<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/fge\/json-schema-validator#read-me-first\">Json schema validator<\/a><\/li>\n<\/ol>\n<p>  <\/p>\n<p><strong>\u0412\u0441\u0435 \u043f\u0440\u0438\u043c\u0435\u0440\u044b<\/strong>: <\/p>\n<p>  <\/p>\n<ol>\n<li><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\/3.8-json\/fastjson\">Alibaba Fastjson<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\/3.8-json\/gson\">Gson<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\/3.8-json\/logansquare\">LoganSquare<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\/3.8-json\/json_java\">JSON java<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\/3.8-json\/moshi\">Square Moshi<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\/3.8-json\/ig_json_parser\">Instagram Ig json parser<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\/3.8-json\/jackson\">Jackson<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\/3.8-json\/genson\">Genson<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\/3.8-json\/json_path\">Jayway JsonPath<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\/3.8-json\/jsonschema2pojo\">Jsonschema2pojo<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\/3.8-json\/json_schema_validator\">Json schema validator<\/a><\/li>\n<\/ol>\n<p>  <\/p>\n<h2>4. \u0417\u0430\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435<\/h2>\n<p>  <\/p>\n<p>\u041d\u0430\u0434\u0435\u044e\u0441\u044c \u0432\u0430\u043c \u043f\u043e\u043d\u0440\u0430\u0432\u0438\u043b\u0430\u0441\u044c \u044d\u0442\u0430 \u0441\u0442\u0430\u0442\u044c\u044f, \u0431\u043e\u043b\u0435\u0435 \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u0443\u044e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043e \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430\u0445 \u0438 \u043f\u0440\u0438\u043c\u0435\u0440\u0430\u0445 \u043a\u043e\u0434\u0430 \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u0439\u0442\u0438 \u043d\u0430 <a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\">github&#8217;e<\/a>. \u0412\u0435\u0440\u0441\u0438\u044e \u043d\u0430 \u0430\u043d\u0433\u043b\u0438\u0439\u0441\u043a\u043e\u043c \u044f\u0437\u044b\u043a\u0435 \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u0439\u0442\u0438 <a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/blob\/master\/helloworlds\/3.8-json\/readme.md\">\u0437\u0434\u0435\u0441\u044c<\/a>, \u043e\u0431\u043d\u043e\u0432\u043b\u044f\u0435\u043c\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f \u043d\u0430 \u0440\u0443\u0441\u0441\u043a\u043e\u043c \u0431\u0443\u0434\u0435\u0442 \u043d\u0430 <a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/blob\/master\/helloworlds\/3.8-json\/readme-russian.md\">github&#8217;e<\/a>.<\/p>\n<p>  <\/p>\n<p><strong>\u041f\u043e\u043c\u043e\u0449\u044c \u043f\u0440\u043e\u0435\u043a\u0442\u0443<\/strong>:<br \/>  \u0411\u0443\u0434\u0443 \u0431\u043b\u0430\u0433\u043e\u0434\u0430\u0440\u0435\u043d \u043a\u0430\u043a \u0437\u0430 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043d\u043e\u0432\u044b\u0445 \u043f\u043e\u043b\u0435\u0437\u043d\u044b\u0445 \u0441\u0441\u044b\u043b\u043e\u043a \u0432 \u0441\u043f\u0438\u0441\u043e\u043a \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a, \u0442\u0430\u043a \u0437\u0430 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u044f Hello world \u043f\u0440\u0438\u043c\u0435\u0440\u043e\u0432, \u0438 \u0437\u0430 \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0440\u0443\u0441\u0441\u043a\u043e\u0439 \u0438 \u0430\u043d\u0433\u043b\u0438\u0439\u0441\u043a\u043e\u0439 \u0433\u0440\u0430\u043c\u043c\u0430\u0442\u0438\u043a\u0438 \u0432 \u0441\u0442\u0430\u0442\u044c\u044f\u0445 (\u0441\u043c. \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u0435\u0435 <a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/blob\/master\/helloworlds\/contributing-russian.md\">\u0442\u0443\u0442<\/a>). \u0411\u0443\u0434\u0443 \u0431\u043b\u0430\u0433\u043e\u0434\u0430\u0440\u0435\u043d \u0442\u0430\u043a \u0436\u0435 \u0437\u0430 \u043b\u044e\u0431\u044b\u0435 \u0437\u0430\u043c\u0435\u0447\u0430\u043d\u0438\u044f \u0438 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u044f.<\/p>\n<div class=\"polling\">\n<form action=\"\/json\/polling\/\" class=\"poll\" method=\"post\">\n<div class=\"poll_title\">\u0421\u043b\u0435\u0434\u0443\u044e\u0449\u0443\u044e \u0441\u0442\u0430\u0442\u044c\u044e \u043c\u043d\u0435 \u0445\u043e\u0442\u0435\u043b\u043e\u0441\u044c \u0431\u044b \u043f\u043e \u0442\u0435\u043c\u0435\u2026<\/div>\n<p>  \t\t<input type=\"hidden\" name=\"post_id\" value=\"280782\"\/> \t\t<input type=\"hidden\" name=\"polling_question_id\" value=\"14965\"\/>  \t\t<\/p>\n<table class=\"answer\">\n<tr>\n<td class=\"input\"> \t\t\t\t\t<input type=\"checkbox\" id=\"vv72995\" \t\t\t\t\t\tclass=\"checkbox js-field-data\" \t\t\t\t\t\tname=\"variant[]\" \t\t\t\t\t\tvalue=\"72995\" \/> \t\t\t\t<\/td>\n<td class=\"label\"> \t\t\t\t\t<label for=\"vv72995\">Bean Mapping<\/label> \t\t\t\t<\/td>\n<\/tr>\n<tr>\n<td class=\"input\"> \t\t\t\t\t<input type=\"checkbox\" id=\"vv72997\" \t\t\t\t\t\tclass=\"checkbox js-field-data\" \t\t\t\t\t\tname=\"variant[]\" \t\t\t\t\t\tvalue=\"72997\" \/> \t\t\t\t<\/td>\n<td class=\"label\"> \t\t\t\t\t<label for=\"vv72997\">Functional Programming<\/label> \t\t\t\t<\/td>\n<\/tr>\n<tr>\n<td class=\"input\"> \t\t\t\t\t<input type=\"checkbox\" id=\"vv72999\" \t\t\t\t\t\tclass=\"checkbox js-field-data\" \t\t\t\t\t\tname=\"variant[]\" \t\t\t\t\t\tvalue=\"72999\" \/> \t\t\t\t<\/td>\n<td class=\"label\"> \t\t\t\t\t<label for=\"vv72999\">Reactive Programming<\/label> \t\t\t\t<\/td>\n<\/tr>\n<tr>\n<td class=\"input\"> \t\t\t\t\t<input type=\"checkbox\" id=\"vv73001\" \t\t\t\t\t\tclass=\"checkbox js-field-data\" \t\t\t\t\t\tname=\"variant[]\" \t\t\t\t\t\tvalue=\"73001\" \/> \t\t\t\t<\/td>\n<td class=\"label\"> \t\t\t\t\t<label for=\"vv73001\">Code generation and changing byte code<\/label> \t\t\t\t<\/td>\n<\/tr>\n<tr>\n<td class=\"input\"> \t\t\t\t\t<input type=\"checkbox\" id=\"vv73003\" \t\t\t\t\t\tclass=\"checkbox js-field-data\" \t\t\t\t\t\tname=\"variant[]\" \t\t\t\t\t\tvalue=\"73003\" \/> \t\t\t\t<\/td>\n<td class=\"label\"> \t\t\t\t\t<label for=\"vv73003\">Machine Learning<\/label> \t\t\t\t<\/td>\n<\/tr>\n<tr>\n<td class=\"input\"> \t\t\t\t\t<input type=\"checkbox\" id=\"vv73005\" \t\t\t\t\t\tclass=\"checkbox js-field-data\" \t\t\t\t\t\tname=\"variant[]\" \t\t\t\t\t\tvalue=\"73005\" \/> \t\t\t\t<\/td>\n<td class=\"label\"> \t\t\t\t\t<label for=\"vv73005\">Natural Language Processing (NLP)<\/label> \t\t\t\t<\/td>\n<\/tr>\n<tr>\n<td class=\"input\"> \t\t\t\t\t<input type=\"checkbox\" id=\"vv73007\" \t\t\t\t\t\tclass=\"checkbox js-field-data\" \t\t\t\t\t\tname=\"variant[]\" \t\t\t\t\t\tvalue=\"73007\" \/> \t\t\t\t<\/td>\n<td class=\"label\"> \t\t\t\t\t<label for=\"vv73007\">\u0414\u0440\u0443\u0433\u0443\u044e \u0442\u0435\u043c\u0443 (\u0432 \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u044f\u0445)<\/label> \t\t\t\t<\/td>\n<\/tr>\n<tr>\n<td class=\"input\"> \t\t\t\t\t<input type=\"checkbox\" id=\"vv73009\" \t\t\t\t\t\tclass=\"checkbox js-field-data\" \t\t\t\t\t\tname=\"variant[]\" \t\t\t\t\t\tvalue=\"73009\" \/> \t\t\t\t<\/td>\n<td class=\"label\"> \t\t\t\t\t<label for=\"vv73009\">\u041d\u0435 \u0438\u043c\u0435\u0435\u0442 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f<\/label> \t\t\t\t<\/td>\n<\/tr>\n<tr>\n<td class=\"input\"> \t\t\t\t\t<input type=\"checkbox\" id=\"vv73011\" \t\t\t\t\t\tclass=\"checkbox js-field-data\" \t\t\t\t\t\tname=\"variant[]\" \t\t\t\t\t\tvalue=\"73011\" \/> \t\t\t\t<\/td>\n<td class=\"label\"> \t\t\t\t\t<label for=\"vv73011\">\u0412\u0441\u0435 \u043f\u043b\u043e\u0445\u043e, \u043d\u0435 \u043d\u0443\u0436\u043d\u043e \u0431\u043e\u043b\u044c\u0448\u0435 \u0441\u0442\u0430\u0442\u0435\u0439<\/label> \t\t\t\t<\/td>\n<\/tr>\n<\/table>\n<p class=\"total\">\u041d\u0438\u043a\u0442\u043e \u0435\u0449\u0451 \u043d\u0435 \u0433\u043e\u043b\u043e\u0441\u043e\u0432\u0430\u043b. \u0412\u043e\u0437\u0434\u0435\u0440\u0436\u0430\u043b\u043e\u0441\u044c 2 \u0447\u0435\u043b\u043e\u0432\u0435\u043a\u0430.<\/p>\n<\/p><\/form>\n<p class=\"for_users_only_msg\">\u0422\u043e\u043b\u044c\u043a\u043e \u0437\u0430\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0438 \u043c\u043e\u0433\u0443\u0442 \u0443\u0447\u0430\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u0432 \u043e\u043f\u0440\u043e\u0441\u0435. <a href=\"https:\/\/habrahabr.ru\/auth\/login\/\">\u0412\u043e\u0439\u0434\u0438\u0442\u0435<\/a>, \u043f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430.<\/p>\n<\/p><\/div>\n<div class=\"clear\"><\/div>\n<p> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"https:\/\/habrahabr.ru\/post\/280782\/\"> https:\/\/habrahabr.ru\/post\/280782\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/a2c\/9b5\/177\/a2c9b51776a24372abddfdc19e1b74d0.png\" alt=\"image\"\/><\/p>\n<p>  <\/p>\n<p>\u0412 \u043e\u0434\u043d\u043e\u0439 \u0438\u0437 \u043c\u043e\u0438\u0445 <a href=\"https:\/\/habrahabr.ru\/company\/luxoft\/blog\/280784\/\">\u043f\u0440\u043e\u0448\u043b\u044b\u0445 \u0441\u0442\u0430\u0442\u0435\u0439<\/a> \u044f \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u044b\u0432\u0430\u043b \u043e \u0441\u0432\u043e\u0435\u043c opensorce pet \u043f\u0440\u043e\u0435\u043a\u0442\u0435 <a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/link-rus\">useful-java-links<\/a>, \u0438\u0434\u0435\u044f \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u0441\u043e\u0431\u0440\u0430\u0442\u044c \u043a\u0430\u043a \u043c\u043e\u0436\u043d\u043e \u0431\u043e\u043b\u044c\u0448\u0435 \u0441\u0441\u044b\u043b\u043e\u043a \u043d\u0430 \u043f\u043e\u043b\u0435\u0437\u043d\u044b\u0435 Java \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 \u0438 \u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a\u0438. \u0423 \u043d\u0435\u0433\u043e \u0442\u0430\u043a \u0436\u0435 \u0435\u0441\u0442\u044c \u043f\u043e\u0434\u043f\u0440\u043e\u0435\u043a\u0442 <a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\">Hello World project<\/a> \u0438\u0434\u0435\u044f \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0439 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 \u0441\u043e\u0431\u0440\u0430\u0442\u044c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043f\u0440\u043e\u0441\u0442\u044b\u0445 \u043f\u0440\u0438\u043c\u0435\u0440\u043e\u0432 \u0435\u0451 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f. <\/p>\n<p>  <\/p>\n<p>\u041f\u0440\u043e\u0431\u043b\u0435\u043c\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442\u043e\u0432 \u0432 Java \u043c\u0438\u0440\u0435 \u0432 \u0442\u043e\u043c \u0447\u0442\u043e \u043a\u0440\u043e\u043c\u0435 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0439 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 JDK \u0435\u0441\u0442\u044c \u043e\u0433\u0440\u043e\u043c\u043d\u043e\u0435 \u0434\u0440\u0443\u0433\u0438\u0445 \u043f\u043e\u043b\u0435\u0437\u043d\u044b\u0445 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a, \u043f\u0440\u0438\u0447\u0435\u043c \u043f\u0435\u0440\u0435\u0445\u043e\u0434 \u043e\u0442 \u043e\u0434\u043d\u043e\u0439 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 \u043a \u0434\u0440\u0443\u0433\u043e\u0439 \u043c\u043e\u0436\u0435\u0442 \u0432\u044b\u0437\u044b\u0432\u0430\u0442\u044c \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b \u0438\u0437-\u0437\u0430 \u043d\u0435\u043f\u043e\u043b\u043d\u043e\u0439 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438, \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u044f \u043f\u0440\u043e\u0441\u0442\u044b\u0445 \u043f\u0440\u0438\u043c\u0435\u0440\u043e\u0432 \u0438\u043b\u0438 \u0434\u0430\u0436\u0435 \u0441\u043b\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u043f\u043e\u043d\u044f\u0442\u044c \u043a\u0430\u043a\u0438\u0435 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043d\u0443\u0436\u043d\u043e \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0432 maven \u0447\u0442\u043e\u0431\u044b \u0432\u0441\u0435 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u043b\u043e\u0441\u044c. \u0410 \u043d\u0430 \u043d\u043e\u0432\u043e\u0439 \u0440\u0430\u0431\u043e\u0442\u0435 \u0432\u043f\u043e\u043b\u043d\u0435 \u043c\u043e\u0433\u0443\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0432\u043c\u0435\u0441\u0442\u043e \u0442\u0432\u043e\u0435\u0439 \u043b\u044e\u0431\u0438\u043c\u043e\u0439 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 \u0442\u0443 \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u0442\u044b \u043d\u0435 \u0437\u043d\u0430\u0435\u0448\u044c. \u0418\u0434\u0435\u044f <a href=\"https:\/\/github.com\/Vedenin\/useful-java-links\/tree\/master\/helloworlds\">\u043c\u043e\u0435\u0433\u043e \u043f\u0440\u043e\u0435\u043a\u0442\u0430<\/a> \u043e\u0431\u043b\u0435\u0433\u0447\u0438\u0442\u044c \u0438\u0437\u0443\u0447\u0435\u043d\u0438\u0435 \u0438 \u0432\u044b\u0431\u043e\u0440 \u0440\u0430\u0437\u043d\u044b\u0445 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a. <\/p>\n<p>  <\/p>\n<p>\u0418\u0442\u0430\u043a, \u0434\u0430\u0432\u0430\u0439\u0442\u0435 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043a\u0430\u043a\u0438\u0435 \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b\u0435 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 \u0435\u0441\u0442\u044c \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 JSON \u0432 Java\u2026 <\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-279123","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/279123","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=279123"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/279123\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=279123"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=279123"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=279123"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}