คำอธิบายประกอบ @JSON ถูกใช้โดย JSONSerializer คลาสเพื่อแยกหรือรวมฟิลด์ในระหว่างกระบวนการซีเรียลไลซ์เซชัน เราสามารถใช้ serialize() วิธีการของ JSONSerializer คลาสเพื่อทำการซีเรียลไลซ์เซชั่นแบบตื้นของอินสแตนซ์เป้าหมาย
ไวยากรณ์
@Retention(value=RUNTIME)@Target(value={FIELD,TYPE,METHOD})public @interface JSON
ตัวอย่าง
<ก่อนหน้า> นำเข้า flexjson.JSONSerializer นำเข้า flexjson.JSON คลาสสาธารณะ JSONAnnotationTest { โมฆะสาธารณะหลัก (สตริง [] args) { JSONSerializer serializer =ใหม่ JSONSerializer ().prettyPrint (จริง); พนักงาน emp =พนักงานใหม่ ("ราชา", "ราเมซ", 30, "ไฮเดอราบาด"); สตริง jsonStr =serializer.serialize (emp); System.out.println(jsonStr); }}// Employee classclass Employee { private String firstName, นามสกุล, ที่อยู่; อายุ int ส่วนตัว; พนักงานสาธารณะ (ชื่อสตริง, นามสกุลสตริง, อายุ int, ที่อยู่สตริง) { super (); this.firstName =ชื่อจริง; this.lastName =นามสกุล; this.age =อายุ; this.address =ที่อยู่; } สตริงสาธารณะ getFirstName () { ส่งคืนชื่อ; } @JSON (รวม =เท็จ) สตริงสาธารณะ getLastName () { ส่งคืนนามสกุล; } สาธารณะ int getAge () { อายุกลับ; } @JSON(include=false) สตริงสาธารณะ getAddress () { ที่อยู่ผู้ส่ง; }}ผลลัพธ์
{ "age":30, "class":"Employee", "firstName":"Raja"}