获取JSONObject 中的属性并且转为String笔记
package com.winston.jar_maven;
import net.sf.json.JSONNull;
import net.sf.json.JSONObject;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
/**
*
* @Description: 获取JSONObject 中的属性并且转为String
*
* @Author chencj
* @Version 1.0 2017年1月20日 上午9:47:22
*/
public class App
{
public static void main( String[] args )
{
//设置model
Model model = new Model();
model.setAge(12);
model.setName("小狗");
ObjectMapper objectMapper = new ObjectMapper();
String jsonString = "";
//获取json字符串
try {
jsonString = objectMapper.writeValueAsString(model);
} catch (JsonProcessingException e) {
System.out.println("转换JSON异常"+e);
}
System.out.println("model json字符串:"+jsonString);
//获取JSONObject
JSONObject jsonObject = JSONObject.fromObject(jsonString);
String email = "";
Object emailObject = jsonObject.get("email");
try{
//jsonString里面的emial属性为null 转换为JSONObject 该值为net.sf.json.JSONNull
email = (String)emailObject;
}catch(Exception e){
System.out.println(e);
}
if(emailObject instanceof JSONNull){
System.out.println("emailObject 为空");
}
email = jsonObject.getString("email");
System.out.println("email="+email);
try {
//使用getString获取不存在的key值的时候 会抛出异常
jsonObject.getString("email2");
} catch (Exception e) {
System.out.println(e);
}
if(jsonObject.containsKey("email2")){
jsonObject.getString("email2");
}else{
System.out.println("不存在email2");
}
}
static class Model{
private String name;
private int age;
private String email;
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;
}
public String getEmail () {
return email;
}
public void setEmail (String email) {
this.email = email;
}
}
}