数据对象创建
public class User {
private String name;
private int age;
public String getName () {
return name;
}
public void setName (String name) {
this .name = name;
}
public int getAge () {
return age;
}
public void setAge (int age) {
this .age = age;
}
@Override
public String toString () {
return "User [name=" + name + ", age=" + age + "]" ;
}
}
public class Milk {
private String name;
private String brand;
private String type;
private User user;
private String[] color;
private List<User> users;
public String getName () {
return name;
}
public void setName (String name) {
this .name = name;
}
public String getBrand () {
return brand;
}
public void setBrand (String brand) {
this .brand = brand;
}
public String getType () {
return type;
}
public void setType (String type) {
this .type = type;
}
public User getUser () {
return user;
}
public void setUser (User user) {
this .user = user;
}
public String[] getColor () {
return color;
}
public void setColor (String[] color) {
this .color = color;
}
public List<User> getUsers () {
return users;
}
public void setUsers (List<User> users) {
this .users = users;
}
@Override
public String toString () {
return "Milk [name=" + name + ", brand=" + brand + ", type=" + type
+ ", user=" + user + ", colour=" + Arrays.toString(color)
+ ", users=" + users + "]" ;
}
}
JavaBean和JSON字符串的互转
public void test01(){
Milk milk = new Milk()
//基本属性
milk.setName ("草莓牛奶" )
milk.setBrand ("银桥" )
milk.setType ("酸牛奶" )
//对象属性
User user = new User()
user.setAge (15 )
user.setName ("张三" )
milk.setUser (user)
//字符串数组属性
String[] color = {"红色" ,"白色" ,"橙色" }
milk.setColor (color)
//对象集合属性
User user01 = new User()
user01.setAge (12 )
user01.setName ("张三弟" )
User user02 = new User()
user02.setName ("张三妹" )
user02.setAge (11 )
List<User> users = new ArrayList<User>()
users.add (user01)
users.add (user02)
milk.setUsers (users)
// 实现javaBean到json数据转换
String gsonString = new Gson().toJson (milk)
System.out .println ("gsonString = " + gsonString)
// 实现json到javaBean的转换
Milk milk2 = new Gson().fromJson (gsonString, Milk.class )
List<User> zhangsans = milk2.getUsers ()
User ZhangsanMei = zhangsans.get (1 )
System.out .println ("ZhangsanMei = " + ZhangsanMei)
System.out .println ("milk2.getName() = " + milk2.getName ())
}
输出
gsonString = {"name" :"草莓牛奶" ,"brand" :"银桥" ,"type" :"酸牛奶" ,"user" :{"name" :"张三" ,"age" :15 },"color" :["红色" ,"白色" ,"橙色" ],"users" :[{"name" :"张三弟" ,"age" :12 },{"name" :"张三妹" ,"age" :11 }]}
ZhangsanMei = User [name=张三妹, age=11 ]
milk2.getName () = 草莓牛奶
所需jar包:gson-2.3.1.jar