@JSON注释用于通过JSONSerializer 类在序列化过程,以排除或包括的字段。我们可以使用JSONSerializer 类的serialize()方法对目标实例执行浅化序列化。
@Retention(value=RUNTIME) @Target(value={FIELD,TYPE,METHOD}) public @interface JSON
import flexjson.JSONSerializer; import flexjson.JSON; public class JSONAnnotationTest { public static void main(String[] args) { JSONSerializer serializer = new JSONSerializer().prettyPrint(true); Employee emp = new Employee("Raja", "Ramesh", 30, "Hyderabad"); String jsonStr = serializer.serialize(emp); System.out.println(jsonStr); } } //员工阶层 class Employee { private String firstName, lastName, address; private int age; public Employee(String firstName, String lastName, int age, String address) { super(); this.firstName = firstName; this.lastName = lastName; this.age = age; this.address = address; } public String getFirstName() { return firstName; } @JSON(include=false) public String getLastName() { return lastName; } public int getAge() { return age; } @JSON(include=false) public String getAddress() { return address; } }
输出结果
{ "age": 30, "class": "Employee", "firstName": "Raja" }