浅谈JSONObject认识
- 阿里巴巴的fastjson包
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.4</version>
</dependency>
注意:版本号请参考官网。
- JSON例子详解
1.定义一个基础的Vo对象
public class User {
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Integer getAge() {
return age;
}
public void setAge(Integer age) {
this.age = age;
}
private Long id;
private String name;
private Integer age;
}
2.通过fastJSON解析JSON字符券
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import java.util.Iterator;
import java.util.Map;
/**
*
*/
public class JsonDeom1 {
//json字符串-简单对象型
public static final String JSON_OBJ_STR = "{\"name\":\"lily\",\"age\":12}";
public static void main(String[] args){
/***
* JSON格式的字符串 ====》转化成JSONObject对象;
*/
JSONObject jsonObject = JSONObject.parseObject(JSON_OBJ_STR);
String name = jsonObject.getString("name");
Integer age = jsonObject.getInteger("age");
/**
* 遍历JSONObject对象===遍历MAP对象一样
* 获取JSONObject对像的值===获取Map的值遍历方式也是一样
*/
for(Map.Entry<String, Object> entry:jsonObject.entrySet()){
System.out.println("key=" +entry.getKey() +" and value="+entry.getValue());
}
/***
* 获取JSONObject对象的key的值
*/
for (String key:jsonObject.keySet()){
System.out.println("key---"+key);
}
/***
* 获取JSONObject的value值
*/
for(Object value:jsonObject.values()){
System.out.println("value----"+value);
}
/***
* 迭代模式获取JSONObject的值
*/
Iterator<Map.Entry<String,Object>> rtn = jsonObject.entrySet().iterator();
while(rtn.hasNext()){
Map.Entry<String,Object> unit = rtn.next();
System.out.println("==key--"+unit.getKey()+"--value--"+unit.getValue());
}
/***
* 解析JSONObject字符串为制定的JavaBean;
*/
User user = JSONObject.parseObject(JSON_OBJ_STR, User.class);
/***
* 将User用户转化成JSONObject对象
* 将javabean转化成json字符串
*/
User userJson = new User();
userJson.setName("222");
userJson.setAge(11);
String jsonStr = JSON.toJSONString(userJson);
System.out.println("---"+jsonStr);
}
}
- [JaskSon 写对象]
ObjectMapper mapper = new ObjectMapper();
String mapJakcson = mapper.writeValueAsString(pbcDto);
- [JaskSon 转化对象]
ObjectMapper m = new ObjectMapper();
ProfessionalPBCReportDTO test1 = m.readValue(mapJakcson, xxx.class);
System.out.println(test1.toString());
- [JaskSon 设置日期格式]
ObjectMapper mapper = new ObjectMapper();
mapper.writeValueAsString(Object);
json = mapper.writeValueAsString(obj);