Boolean(String s)
如果 String 参数不为 null 且在忽略大小写时等于 "true",则分配一个表示 true 值的 Boolean 对象。
只有 new Boolean("true")的时候才会返回true其他所有的字符串都是false
Boolean 的值只有true和false 这个就是上边说的
1.SerializerFeature.WriteMapNullValue 是否输出值为null的字段,默认为false
也就是说有null时会输出而不是忽略(默认策略是忽略,所以看不到为null的字段)
2.WriteNullStringAsEmpty—字符类型字段如果为null,输出为”“,而非null
注意是字段是字段是字段,而不是json.put("key",null),所以用它时,字段为null的可以转换为空字符串。
3.如果让输出的json中所有为null的字符串都变成空字符串,最简单的做法就是加一个值过滤器,这样就避免了有的字段为null,有的字段为空字符的现象。
1.简单的解析json字符串首先将json字符串转换为json对象,然后再解析json对象,过程如下。
JSONObject jsonObject = JSONObject.fromObject(jsonStr)
[java] view plain copy
<pre></pre><span style="white-space:pre"></span>
<pre></pre>
根据json中的键得到它的值
String name = jsonObject.getString("name")
int num = jsonObject.getInt("num")
String sex = jsonObject.getString("sex")
int age = jsonObject.getInt("age")
2.将json字符串转换为java对象
同样先将json字符串转换为json对象,再将json对象转换为java对象,如下所示。
JSONObject obj = new JSONObject().fromObject(jsonStr)//将json字符串转换为json对象
将json对象转换为java对象
Person jb = (Person)JSONObject.toBean(obj,Person.class)//将建json对象转换为Person对象
3.将java对象转换为json字符串
先将java对象转换为json对象,在将json对象转换为json字符串
JSONObject json = JSONObject.fromObject(obj)//将java对象转换为json对象
String str = json.toString()//将json对象转换为字符串
完整代码如下:
[java] view plain copy
package baz.parse
import java.util.ArrayList
import java.util.List
import net.sf.json.JSON
import net.sf.json.JSONArray
import net.sf.json.JSONObject
import net.sf.json.JSONSerializer
import baz.bean.Person
public class ParseJson {
private String jsonStr
public ParseJson() {
}