-
เจสันคืออะไร?
JSON (JavaScript Object Notation) เป็นรูปแบบการแลกเปลี่ยนข้อมูลอย่างง่ายโดยอิงตามชุดย่อยของภาษาการเขียนโปรแกรม JavaScript
-
Java และ JavaScript แตกต่างกันอย่างไร?
นี่คือภาษาการเขียนโปรแกรมที่แตกต่างกัน 2 ภาษา แม้ว่าชื่อจะคล้ายกันก็ตาม ทั้งสองมีไวยากรณ์เหมือน C ความแตกต่างมีดังนี้:
- Java ใช้วิธีการ OOP ตามคลาส JavaScript บนต้นแบบ
- Java มีการพิมพ์แบบคงที่ JavaScript มีการพิมพ์แบบไดนามิก
- Java ถูกโหลดจาก bytecode ที่คอมไพล์แล้ว JavaScript ถูกตีความโดยตรงจากไฟล์
-
JSON และ XML แตกต่างกันอย่างไร
JSON เป็นรูปแบบการแลกเปลี่ยนข้อมูล
XML เป็นภาษามาร์กอัป (ซึ่งคุณสามารถระบุไวยากรณ์ โครงสร้าง ประเภทข้อมูล และแบบจำลองโดยทั่วไปได้)
ทั้งสองสามารถใช้เพื่อถ่ายโอนข้อมูลได้ โดยปกติแล้ว ในการทำงานกับทั้งสองมาตรฐาน จะใช้เฟรมเวิร์กที่แตกต่างกันและไวยากรณ์ต่างกัน
-
คุณรู้จักกรอบการทำงานใดในการทำงานกับ JSON
ระดับ 33 ทำให้เรารู้จักกับเฟรมเวิร์กของแจ็คสัน นอกจากนี้ฉันจะให้อีก 3 ข้อและลิงก์ไปยังบทความที่มีการเปรียบเทียบ:
- แจ็คสันโดย FasterXML
- JSON.simple โดย Yidong Fang
- GSON จาก Google
- JSONP จากออราเคิล
การเปรียบเทียบไลบรารี Java สำหรับการทำงานกับ JSON: JSON.simple, GSON, Jackson และ JSONP
-
คุณรู้จักเฟรมเวิร์กสำหรับการทำงานกับ XML อะไรบ้าง
เนื่องจาก XML เป็นรูปแบบการแสดงข้อมูล จึงมีเทคโนโลยีที่หลากหลายมากขึ้นในการทำงานกับรูปแบบนี้ ฉันจะให้เทคโนโลยีที่ใช้ในการทำให้วัตถุ Java เป็นอนุกรมเป็น XML:
- JAXB (รวมอยู่ใน J ใน JDK)
- เอ็กซ์สตรีม
ลิงก์พร้อมภาพรวมโดยย่อของเฟรมเวิร์กต่างๆ สำหรับการทำงานกับ xml: JAVA + XML
-
คุณรู้จักคำอธิบายประกอบของแจ็คสันอะไรบ้าง
ลองดูสิ่งที่ใช้ในการบรรยาย:
- @JsonAutoDetect - วางไว้หน้าชั้นเรียน บอกให้แจ็กสันใช้สาขาในชั้นเรียนนี้เมื่อเขียนหรืออ่าน ในวงเล็บ คุณสามารถตั้งค่าพารามิเตอร์ (fieldVisibility = JsonAutoDetect.Visibility.ANY) เพื่อกำหนดค่าการมองเห็นของฟิลด์ที่จะใช้ (โดยค่าเริ่มต้น จะใช้เฉพาะฟิลด์สาธารณะเท่านั้น)
- @JsonIgnore - วางไว้หน้าสนาม บอกให้ Jackson ละเว้นฟิลด์นี้เมื่ออ่าน/เขียน
- @JsonProperty - วางไว้หน้าฟิลด์ getter หรือ setter ช่วยให้คุณสามารถระบุชื่อฟิลด์อื่นในระหว่างการซีเรียลไลซ์ได้
- @JsonWriteNullProperties - วางไว้หน้าชั้นเรียน ช่องออบเจ็กต์ที่เป็นโมฆะจะไม่ถูกละเลย
- @JsonPropertyOrder - วางไว้หน้าชั้นเรียน ช่วยให้คุณกำหนดลำดับที่ฟิลด์ของออบเจ็กต์ Java จะถูกซีเรียลไลซ์เป็น JSON
- @JsonDeserialize - วางไว้หน้าฟิลด์ ช่วยให้คุณสามารถกำหนดคลาสที่จะดีซีเรียลไลซ์อ็อบเจ็กต์ JSON ได้ ตัวอย่างเช่น ใน Java อาร์เรย์และรายการจะถูกทำให้เป็นอนุกรมเป็นอาร์เรย์ และในระหว่างการดีซีเรียลไลซ์ เราสามารถเลือกได้ว่าเราต้องการรับอะไรกันแน่
นี่คือลิงก์ไปยังไซต์ที่มีคำอธิบายประกอบ: Jackson Annotations
-
คุณรู้คำอธิบายประกอบของ JAXB อะไรบ้าง
ฉันจะวิเคราะห์เฉพาะที่ใช้ในการบรรยายเท่านั้น:
- @XmlRootElement - วางไว้ก่อนคลาส บ่งชี้ว่าวัตถุนี้สามารถเป็นองค์ประกอบระดับบนสุดได้ เช่น องค์ประกอบอื่นๆ ทั้งหมดอยู่ภายในนั้น
- @XmlType - วางไว้ก่อนชั้นเรียน เพิ่มข้อมูลเพิ่มเติมให้กับ XML Schema คุณสามารถระบุแอตทริบิวต์บางอย่างได้ เช่น ลำดับขององค์ประกอบ ชื่อ เป็นต้น
- @XmlElement - วางไว้หน้าฟิลด์ อนุญาตให้คุณตั้งชื่อองค์ประกอบ xml ค่าเริ่มต้น ฯลฯ
- @XmlElementWrapper - วางไว้หน้าฟิลด์หรือทะเยอทะยาน ช่วยให้คุณสร้างแท็กเส้นขอบสำหรับกลุ่มองค์ประกอบ
- @XmlJavaTypeAdapter - วางไว้ก่อนคลาส คลาสอะแด็ปเตอร์เสริมที่จำเป็นสำหรับการจัดเรียง/ยกเลิกการจัดเรียงคลาสนี้จะระบุไว้ในวงเล็บ
- @XmlEnum - วางไว้ก่อน enum ในวงเล็บคุณสามารถระบุประเภทที่จะแสดงค่าแจงนับได้
- @XmlEnumValue — วางไว้หน้าค่าแจงนับ อนุญาตให้คุณระบุค่าพิเศษสำหรับค่าแจงนับที่กำหนด
@XmlAttribute - วางไว้หน้าฟิลด์ ฟิลด์นี้จะแสดงเป็นแอตทริบิวต์ XML นี่คือลิงก์ไปยังไซต์ที่มีคำอธิบายประกอบบางส่วน (ฉันขออภัยที่ไม่สามารถสร้างคำแปลที่ถูกต้องสำหรับคำอธิบายประกอบได้ ข้อมูลนี้เข้าใจได้ แต่ฉันไม่รู้ว่าจะพูดอย่างถูกต้องในภาษารัสเซียได้อย่างไร): https:// jaxb.java.net/tutorial/index .html
-
ความแตกต่างระหว่างการทำให้เป็นอนุกรมและการดีซีเรียลไลซ์ใน JSON คืออะไร?
ฉันไม่เข้าใจสาระสำคัญของคำถาม ฉันไม่เห็นจุดใดในการเปรียบเทียบ 2 กระบวนการซึ่งกันและกัน บางทีนี่อาจมีไว้เพื่อเปรียบเทียบ JSON และ XML ลิงก์ไปยังหัวข้อนี้มีอยู่ในคำถามถัดไป
-
JSON หรือ XML ไหนดีกว่ากัน? ทำไม
นี่เป็นบทความดีๆ ที่เปรียบเทียบ JSON และ XML: JSON และ XML มีอะไรดีกว่า?
บางทีอาจเป็นไปไม่ได้ที่จะบอกว่าบางสิ่งดีกว่า เมื่อเลือกคุณควรดูที่งานเองและสิ่งที่จะมีประสิทธิภาพมากกว่าในการใช้งาน นอกจากนี้ตัวเลือกอาจขึ้นอยู่กับความชอบส่วนตัวของนักพัฒนาด้วย
-
ดีทีโอคืออะไร?
DTO (Data Transfer Object) เป็นรูปแบบการออกแบบที่มีข้อมูลโดยไม่มีตรรกะในการทำงานกับข้อมูลดังกล่าว โดยทั่วไปแล้ว DTO จะใช้เพื่อถ่ายโอนข้อมูลระหว่างแอปพลิเคชันที่แตกต่างกัน หรือระหว่างเลเยอร์ภายในแอปพลิเคชันเดียวกัน พวกเขาสามารถมองได้ว่าเป็นแหล่งเก็บข้อมูลที่มีวัตถุประสงค์เพียงอย่างเดียวคือการถ่ายทอดข้อมูลนั้นไปยังผู้รับ
คำถามข้อ 2 ข้อ 3 แก้ไขแล้วตามความคิดเห็น
GO TO FULL VERSION