1、项目地址
http://flexjson.sourceforge.net/
2、使用
项目首页有比较详细的说明
3、例子
Person.java
- package org.bruceye.demo.flexjson;
- public class Person {
- private String name;
- private int age;
- private Phone phone;
- public Person() {
- super();
- }
- public Person(String name, int age) {
- super();
- this.name = name;
- this.age = age;
- }
- public Person(String name, int age, Phone phone) {
- super();
- this.name = name;
- this.age = age;
- this.phone = phone;
- }
- public int getAge() {
- return age;
- }
- public void setAge(int age) {
- this.age = age;
- }
- public String getName() {
- return name;
- }
- public void setName(String name) {
- this.name = name;
- }
- public Phone getPhone() {
- return phone;
- }
- public void setPhone(Phone phone) {
- this.phone = phone;
- }
- }
Phone.java
- package org.bruceye.demo.flexjson;
- public class Phone {
- private String number;
- private String are;
- public Phone() {
- super();
- }
- public Phone(String number) {
- super();
- this.number = number;
- }
- public String getNumber() {
- return number;
- }
- public void setNumber(String number) {
- this.number = number;
- }
- public String getAre(){
- return "Guangdong of China";
- }
- }
Test.java
- package org.bruceye.demo.flexjson;
- import flexjson.JSONSerializer;
- public class Test {
- public static void main(String[] args) {
- Person p = new Person("bruceye", 25, new Phone("13888888888"));
- String pStr = new JSONSerializer()
- .exclude("*.class")
- .serialize(p);
- System.out.println(pStr);
- }
- }
运行结果:
- {"age":25,"name":"bruceye","phone":{"are":"Guangdong of China","number":"13888888888"}}
至此已经基本演示了FLEXJSON的简单使用方法。
值得一提的是,JSONSerializer对象的include和exclude是有优先级的。
例如
include("name")//包含名称
exclude("*")//排除所有属性
如果一次设置,那么结果将只有名称