对学习android开发的朋友来说,刚入门学习解析数据的时候总是对如何获取到json数据感到头痛,那么相信这篇文章应该可以帮组到你。
1、 写一个java bean
对于这一步应该不用说什么,直接上代码:
package com.fly.bean;
import java.io.Serializable;
/**
* Created by fly on 2016/10/11.
*/
public class Person implements Serializable {
private int id;
private String name;
private int age;
public Person(int id, String name, int age) {
this.id = id;
this.name = name;
this.age = age;
}
public Person() {
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
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 "Person{" + "id=" + id + ", name='" + name + '\'' + ", age="
+ age + '}';
}
}
2、导入相关的jar,之后我会上传,就不多说了
3、生成json数据
我们仔细观察下面的json数据:
{"persons":[{"age":10,"id":1,"name":"jack"}]}
我们会发现,他是包含一个”persons”的字符串头部和一个数组的内容,这样和Map集合存储方式相同。这样,我们自然就是用Map来放置数据,下面是代码:
/**
* 生成json字符串
* @param key 生成json字符串的名称
* @param value json字符串的内容
* @return
*/
public static String createJsonString(String key, Object value) {
Map<String, Object> map = new HashMap<String, Object>();
map.put(key, value);
//将map集合转换为json字符串
String result = JSONSerializer.toJSON(map).toString();
return result;
}
我们在调用该方法时,根据传入的value的类型,来生成包含不同内容json字符串。下面是生成一段只包含一个Person对象的json数据的代码:
Person person = new Person(1, "jack", 10);
String result = JsonUtil.createJsonString("person", person);
最后在控制台打印出来的结果如下:
{"person":{"age":10,"id":1,"name":"jack"}}
以上就是生成简单json数据的方法,可以根据个人爱好或需求生成不同json数据,只需传入不同的value值即可!