
{"id":2484,"date":"2020-11-18T14:11:56","date_gmt":"2020-11-18T06:11:56","guid":{"rendered":"http:\/\/admin.evshou.com\/?p=2484"},"modified":"2020-11-23T11:25:31","modified_gmt":"2020-11-23T03:25:31","slug":"2020javaweb%e6%95%99%e7%a8%8b%e4%b9%8bjavascript%e7%9a%84json%e5%af%b9%e8%b1%a1%e5%92%8cfastjson%e4%bb%a5%e5%8f%8ajackson","status":"publish","type":"post","link":"https:\/\/www.9713job.com\/?p=2484","title":{"rendered":"2020javaweb\u6559\u7a0b\u4e4bJavaScript\u7684json\u5bf9\u8c61\u548cFastJSON\u4ee5\u53caJackson"},"content":{"rendered":"<h3>2020javaweb\u6559\u7a0b\u4e4bJavaScript\u7684json\u5bf9\u8c61<\/h3>\n<p><span style=\"color: #ff0000;\"><strong>json\u6982\u8ff0<\/strong><\/span><\/p>\n<p>json(<span style=\"color: #ff0000;\">JavaScript object notation<\/span>)JavaScript\u5bf9\u8c61\u8868\u793a\uff0c\u662f\u4e00\u79cd<span style=\"color: #ff0000;\">\u8f7b\u91cf\u7ea7\u7684\u6570\u636e\u4ea4\u6362\u683c\u5f0f<\/span>\u3002<\/p>\n<p><span style=\"color: #ff0000;\">json\u8bed\u6cd5\uff1a<\/span><\/p>\n<p>[] \uff1a\u8868\u793a\u6570\u7ec4<br \/>\n{} : \u8868\u793a\u5bf9\u8c61<br \/>\n&#8221; &#8221; \uff1a\u8868\u793a\u662f\u5c5e\u6027\u540d\u6216\u5b57\u7b26\u4e32\u7c7b\u578b\u7684\u503c<br \/>\n: \u8868\u793a\u5c5e\u6027\u548c\u503c\u4e4b\u95f4\u7684\u95f4\u9694\u7b26<br \/>\n,\u00a0 \u8868\u793a\u591a\u4e2a\u5c5e\u6027\u7684\u95f4\u9694\u7b26\u6216\u8005\u662f\u591a\u4e2a\u5143\u7d20\u7684\u95f4\u9694\u7b26<!--more--><\/p>\n<p>&lt;script&gt;<br \/>\nvar zs={name:&#8221;\u8d75\u56db&#8221;,age:22,sex:&#8221;\u7537&#8221;};<br \/>\nconsole.log(zs);<br \/>\nconsole.log(&#8220;json\u8f6c\u5b57\u7b26\u4e32&#8221;+JSON.stringify(zs));<\/p>\n<p>var xm='{&#8220;name&#8221;:&#8221;\u5c0f\u660e&#8221;,&#8221;age&#8221;:22,&#8221;sex&#8221;:&#8221;\u7537&#8221;}&#8217;;<br \/>\nconsole.log(xm);<br \/>\nconsole.log(JSON.parse(xm));<br \/>\n&lt;\/script&gt;<\/p>\n<p><img decoding=\"async\" class=\"alignnone size-full wp-image-2254\" src=\"\/wp-content\/uploads\/2020\/11\/15\/7.png\" alt=\"\" width=\"680\" \/><\/p>\n<p><span style=\"color: #ff0000;\"><strong>FastJson\u89e3\u6790<\/strong><\/span><\/p>\n<pre><strong>\/\/JSON\u5b57\u7b26\u4e32 \u5b9e\u4f53\u7c7b\u7684\u5c5e\u6027\u540d\u8981\u548cJSON\u5b57\u7b26\u4e32\u540d\u79f0\u5b8c\u5168\u4e00\u81f4<\/strong>\r\nString json1=\"{'id':1,'name':'JAVA-1910',\" +\r\n        \"'stus':[\" +\r\n        \"{'id':101,'name':'\u5173\u7fbd','age':19},\" +\r\n        \"{'id':102,'name':'\u9ec4\u5fe0','age':22}\" +\r\n        \"{'id':103,'name':'\u8d75\u4e91','age':33}\"+\r\n        \"]}\";\r\n\/\/JSON\u5b57\u7b26\u4e32\u8f6c\u6362\u4e3a\u5b9e\u4f53\u7c7b\u5bf9\u8c61\r\nGrade grade = JSON.parseObject(json1, Grade.class);\r\nArrayList&lt;Student&gt; stus = grade.getStus();\r\nfor (Student student : stus) {\r\n    System.out.println(student);\r\n}\r\nSystem.out.println(grade);<\/pre>\n<pre><strong>\/\/---\u5b9e\u4f53\u7c7b\u8f6c\u6362\u4e3aJSON\u5b57\u7b26\u4e32<\/strong>\r\nArrayList&lt;Student&gt; students=new ArrayList&lt;&gt;();\r\nStudent stu=new Student(107,\"\u8bf8\u845b\u4eae\",55);\r\nstudents.add(new Student(104,\"\u5f20\u98de\",25));\r\nstudents.add(new Student(105,\"\u8c82\u8749\",28));\r\nstudents.add(new Student(106,\"\u59b2\u5df1\",35));\r\nstudents.add(stu);\r\nstudents.add(stu);\r\nGrade g=new Grade(2,null,students);<\/pre>\n<pre>\/\/\u5982\u679c\u5c5e\u6027\u548c\u503c\u4e3anull \u4e0d\u53c2\u4e0e\u89e3\u6790\r\n\/\/\u63a7\u5236\u4e0d\u5e8f\u5217\u5316\u67d0\u4e9b\u5c5e\u6027 \u5728 \u5b9e\u4f53\u7c7b\u5c5e\u6027\u4e0a\u52a0\r\n\/\/ @JSONField(serialize=false)  \u9ed8\u8ba4\u662ftrue<\/pre>\n<p><strong><span style=\"color: #ff0000;\">\u7f8e\u5316\u8f93\u51fa SerializerFeature.PrettyFormat<\/span><\/strong><\/p>\n<pre>{\r\n\t\"id\":2,\r\n\t\"name\":\"\",\r\n\t\"stus\":[\r\n\t\t{\r\n\t\t\t\"age\":25,\r\n\t\t\t\"id\":104,\r\n\t\t\t\"name\":\"\u5f20\u98de\"\r\n\t\t},\r\n\t\t{\r\n\t\t\t\"age\":28,\r\n\t\t\t\"id\":105,\r\n\t\t\t\"name\":\"\u8c82\u8749\"\r\n\t\t},\r\n\t\t{\r\n\t\t\t\"age\":35,\r\n\t\t\t\"id\":106,\r\n\t\t\t\"name\":\"\u59b2\u5df1\"\r\n\t\t},\r\n\t\t{\r\n\t\t\t\"age\":55,\r\n\t\t\t\"id\":107,\r\n\t\t\t\"name\":\"\u8bf8\u845b\u4eae\"\r\n\t\t},\r\n\t\t{\r\n\t\t\t\"age\":55,\r\n\t\t\t\"id\":107,\r\n\t\t\t\"name\":\"\u8bf8\u845b\u4eae\"\r\n\t\t}\r\n\t]\r\n}\r\n<\/pre>\n<p><span style=\"color: #ff0000;\">null\u503c\u4e5f\u8f93\u51fa SerializerFeature.WriteMapNullValue<\/span><br \/>\n<span style=\"color: #ff0000;\">null\u503c\u5c06\u8f93\u51fa \u7a7a\u5b57\u7b26\u4e32 SerializerFeature.WriteNullStringAsEmpty<strong><br \/>\n<\/strong>\u5faa\u73af\u5f15\u7528\u68c0\u6d4b SerializerFeature.DisableCircularReferenceDetect<\/span><\/p>\n<pre>String s = JSON.toJSONString(g, \r\nSerializerFeature.PrettyFormat,\r\nSerializerFeature.WriteMapNullValue,\r\nSerializerFeature.WriteNullStringAsEmpty,\r\nSerializerFeature.DisableCircularReferenceDetect);\r\nSystem.out.println(s);<\/pre>\n<p><span style=\"color: #ff0000;\"><strong>Jackson\u89e3\u6790<\/strong><\/span><\/p>\n<pre>\/\/JSON\u5b57\u7b26\u4e32\r\nString json1=\"{\\\"id\\\":1,\\\"name\\\":\\\"JAVA-1910\\\",\\\"stus\\\":\" +\r\n        \"[{\\\"id\\\":101,\\\"name\\\":\\\"\u5173\u7fbd\\\",\\\"age\\\":19},\" +\r\n        \"{\\\"id\\\":103,\\\"name\\\":\\\"\u8d75\u4e91\\\",\\\"age\\\":33}]}\";\r\n\/\/1.Jackson \u521b\u5efa\u5bf9\u8c61\r\nObjectMapper mapper=new ObjectMapper();\r\ntry {\r\n    \/\/2.\u8c03\u7528\u65b9\u6cd5\u8fdb\u884c\u8f6c\u6362  \u6709\u5f02\u5e38\r\n    Grade grade = mapper.readValue(json1, Grade.class);\r\n    ArrayList&lt;Student&gt; stus = grade.getStus();\r\n    for (Student student : stus) {\r\n        System.out.println(student);\r\n    }\r\n    System.out.println(grade);\r\n} catch (IOException e) {\r\n    e.printStackTrace();\r\n}\r\n\/\/----\u5bf9\u8c61\u8f6c\u6362\u4e3aJSON\r\nArrayList&lt;Student&gt; students=new ArrayList&lt;Student&gt;();\r\nstudents.add(new Student(104,\"\u5f20\u98de\",25));\r\nstudents.add(new Student(105,\"\u8c82\u8749\",28));\r\nstudents.add(new Student(106,\"\u59b2\u5df1\",35));\r\nGrade g=new Grade(1,\"JAVAEE-1911\",students);\r\ntry {\r\n    String s = mapper.writeValueAsString(g);\r\n    System.out.println(s);\r\n} catch (JsonProcessingException e) {\r\n    e.printStackTrace();\r\n}<\/pre>\n<p><span style=\"color: #ff0000;\">@JsonIgnore\u6ce8\u89e3\u7528\u4e8e\u6392\u9664\u67d0\u4e2a\u5c5e\u6027\uff0c\u8fd9\u6837\u8be5\u5c5e\u6027\u5c31\u4e0d\u4f1a\u88abJackson\u5e8f\u5217\u5316\u548c\u53cd\u5e8f\u5217\u5316<\/span><\/p>\n<p>\/\/\u7f8e\u5316\u8f93\u51fa<br \/>\n<span style=\"color: #ff0000;\">mapper.enable(SerializationFeature.INDENT_OUTPUT);<\/span><\/p>\n<p>\/\/ \u5141\u8bb8\u5e8f\u5217\u5316\u7a7a\u7684\u5b9e\u4f53\u7c7b\uff08\u5426\u5219\u4f1a\u629b\u51fa\u5f02\u5e38\uff09<br \/>\n<span style=\"color: #ff0000;\">mapper.disable(SerializationFeature.FAIL_ON_EMPTY_BEANS);<\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>2020javaweb\u6559\u7a0b\u4e4bJavaScript\u7684json\u5bf9\u8c61 json\u6982\u8ff0 json(JavaScript  [&hellip;]<\/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-2484","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/www.9713job.com\/index.php?rest_route=\/wp\/v2\/posts\/2484","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.9713job.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.9713job.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.9713job.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.9713job.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2484"}],"version-history":[{"count":1,"href":"https:\/\/www.9713job.com\/index.php?rest_route=\/wp\/v2\/posts\/2484\/revisions"}],"predecessor-version":[{"id":2485,"href":"https:\/\/www.9713job.com\/index.php?rest_route=\/wp\/v2\/posts\/2484\/revisions\/2485"}],"wp:attachment":[{"href":"https:\/\/www.9713job.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2484"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.9713job.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2484"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.9713job.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2484"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}