{"id":13685,"date":"2019-10-03T11:11:52","date_gmt":"2019-10-03T09:11:52","guid":{"rendered":"http:\/\/blog.wenzlaff.de\/?p=13685"},"modified":"2021-11-22T17:14:07","modified_gmt":"2021-11-22T16:14:07","slug":"wie-kann-json-in-java-schnell-erzeugt-werden","status":"publish","type":"post","link":"http:\/\/blog.wenzlaff.de\/?p=13685","title":{"rendered":"Wie kann JSON  in Java &#8222;schnell&#8220; erzeugt werden?"},"content":{"rendered":"<p>Da heute ein <a href=\"https:\/\/de.wikipedia.org\/wiki\/Tag_der_Deutschen_Einheit\" rel=\"noopener noreferrer\" target=\"_blank\">arbeitsfreier Tag<\/a> ist, schon mal eine kleine Vorbereitung (&#8222;ARBEIT&#8220;) f\u00fcr den Einsatz im Projekt ab Montag. Da wollen wir <a href=\"http:\/\/json.org\/\" rel=\"noopener noreferrer\" target=\"_blank\">JSON Objekte<\/a> verwenden. F\u00fcr die JSON Erzeugung mit Java gibt es viele M\u00f6glichkeiten und Libs. Hier mal ein kleines Beispiel mit der 68 kB gro\u00dfen <a href=\"https:\/\/github.com\/stleary\/JSON-java\" rel=\"noopener noreferrer\" target=\"_blank\">json.org Lib<\/a>.<\/p>\n<p>Zuerst in der <strong>pom.xml<\/strong> die Lib eintragen:<\/p>\n<pre class=\"lang:xhtml decode:true \" >\r\n&lt;dependency&gt;\r\n\t\t\t&lt;groupId&gt;org.json&lt;\/groupId&gt;\r\n\t\t\t&lt;artifactId&gt;json&lt;\/artifactId&gt;\r\n\t\t\t&lt;version&gt;20190722&lt;\/version&gt;\r\n&lt;\/dependency&gt;<\/pre>\n<p>und dann einen kleine JUnit 5 Test.<\/p>\n<pre class=\"lang:java decode:true \" >@Test\r\n\tvoid kleinerJsonTest() {\r\n\r\n\t\tJSONObject json = new JSONObject();\r\n\r\n\t\tjson.put(\"name\", \"Wenzlaff\");\r\n\t\tjson.put(\"vorname\", \"Thomas\");\r\n\t\tjson.put(\"pin\", 123456);\r\n\r\n\t\t\/\/ {\"pin\":123456,\"vorname\":\"Thomas\",\"name\":\"Wenzlaff\"}\r\n\t\tassertEquals(\"{\\\"pin\\\":123456,\\\"vorname\\\":\\\"Thomas\\\",\\\"name\\\":\\\"Wenzlaff\\\"}\" + \"\", json.toString());\r\n\t}<\/pre>\n<p>Also einfach ein <a href=\"http:\/\/stleary.github.io\/JSON-java\/index.html\" rel=\"noopener noreferrer\" target=\"_blank\">JSONObject Objekt<\/a> erstellen und mit put die Key und Value Werte eingeben. F\u00fcr die put Methode gibt es viele M\u00f6glichkeiten:<!--more--><\/p>\n<p><a href=\"http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2019\/10\/Bildschirmfoto-2019-10-03-um-10.31.21.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2019\/10\/Bildschirmfoto-2019-10-03-um-10.31.21.png\" alt=\"\" width=\"2064\" height=\"312\" class=\"aligncenter size-full wp-image-13686\" srcset=\"http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2019\/10\/Bildschirmfoto-2019-10-03-um-10.31.21.png 2064w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2019\/10\/Bildschirmfoto-2019-10-03-um-10.31.21-300x45.png 300w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2019\/10\/Bildschirmfoto-2019-10-03-um-10.31.21-768x116.png 768w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2019\/10\/Bildschirmfoto-2019-10-03-um-10.31.21-1024x155.png 1024w\" sizes=\"auto, (max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 543px, 580px\" \/><\/a> <\/p>\n<p>In eine Datei, geht dann auch mit einem Dreizeiler:<\/p>\n<pre class=\"lang:java decode:true \" >\ttry (FileWriter file = new FileWriter(\"test-json.json\")) {\r\n\t\t\tfile.write(json.toString());\r\n\t\t\tfile.flush();\r\n\t\t}<\/pre>\n<p>Das Ergebnis:<\/p>\n<p><a href=\"http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2019\/10\/Bildschirmfoto-2019-10-03-um-11.35.08.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2019\/10\/Bildschirmfoto-2019-10-03-um-11.35.08.png\" alt=\"\" width=\"482\" height=\"236\" class=\"aligncenter size-full wp-image-13694\" srcset=\"http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2019\/10\/Bildschirmfoto-2019-10-03-um-11.35.08.png 482w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2019\/10\/Bildschirmfoto-2019-10-03-um-11.35.08-300x147.png 300w\" sizes=\"auto, (max-width: 482px) 100vw, 482px\" \/><\/a><\/p>\n<p>Auch ein Array in JSON umzuwandeln geht schnell:<\/p>\n<pre class=\"lang:java decode:true \" >@Test\r\n\tvoid kleinerJsonArrayTest() throws Exception {\r\n\r\n\t\tList&lt;String&gt; testArray = new ArrayList&lt;&gt;();\r\n\t\ttestArray.add(\"Thomas\");\r\n\t\ttestArray.add(\"Martin\");\r\n\t\ttestArray.add(\"Susi\");\r\n\r\n\t\tJSONObject json = new JSONObject();\r\n\t\tjson.put(\"vornamen\", testArray);\r\n\r\n\t\t\/\/ {\"vornamen\":[\"Thomas\",\"Martin\",\"Susi\"]}\r\n\t\tassertEquals(\"{\\\"vornamen\\\":[\\\"Thomas\\\",\\\"Martin\\\",\\\"Susi\\\"]}\" + \"\", json.toString());\r\n\r\n\t\ttry (FileWriter file = new FileWriter(\"test-array-json.json\")) {\r\n\t\t\tfile.write(json.toString());\r\n\t\t\tfile.flush();\r\n\t\t}\r\n\t}<\/pre>\n<p>So, jetzt <strong>&#8222;Freut euch immer&#8220;<\/strong> <\/p>\n<p><a href=\"http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2019\/10\/Urlaub_2019.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2019\/10\/Urlaub_2019.jpg\" alt=\"\" width=\"3508\" height=\"2048\" class=\"aligncenter size-full wp-image-13689\" srcset=\"http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2019\/10\/Urlaub_2019.jpg 3508w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2019\/10\/Urlaub_2019-300x175.jpg 300w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2019\/10\/Urlaub_2019-768x448.jpg 768w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2019\/10\/Urlaub_2019-1024x598.jpg 1024w\" sizes=\"auto, (max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 543px, 580px\" \/><\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Da heute ein arbeitsfreier Tag ist, schon mal eine kleine Vorbereitung (&#8222;ARBEIT&#8220;) f\u00fcr den Einsatz im Projekt ab Montag. Da wollen wir JSON Objekte verwenden. F\u00fcr die JSON Erzeugung mit Java gibt es viele M\u00f6glichkeiten und Libs. Hier mal ein kleines Beispiel mit der 68 kB gro\u00dfen json.org Lib. Zuerst in der pom.xml die Lib &hellip; <\/p>\n<p class=\"link-more\"><a href=\"http:\/\/blog.wenzlaff.de\/?p=13685\" class=\"more-link\"><span class=\"screen-reader-text\">\u201eWie kann JSON  in Java &#8222;schnell&#8220; erzeugt werden?\u201c <\/span>weiterlesen<\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[220,5],"tags":[112,2178,1257,55,3763],"class_list":["post-13685","post","type-post","status-publish","format-standard","hentry","category-anleitung","category-java","tag-beispiel","tag-java","tag-json","tag-junit","tag-tag-der-deutschen-einheit"],"_links":{"self":[{"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=\/wp\/v2\/posts\/13685","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=13685"}],"version-history":[{"count":0,"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=\/wp\/v2\/posts\/13685\/revisions"}],"wp:attachment":[{"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=13685"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=13685"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=13685"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}