fastjson的常用用法以及自定义排序详解编程语言

fastJson的四种常用方法

JSON 转 POJO 
public static <T> T getObject(String pojo, Class<T> tclass) { 
            return JSONObject.parseObject(pojo, tclass); 
     } 
      
POJO 转 JSON     
public static <T> String getJson(T tResponse){ 
         return JSONObject.toJSONString(tResponse); 
} 
 
 
List<T> 转 json  
 public static <T> String listToJson(List<T> ts) { 
        return JSON.toJSONString(ts); 
} 
 
json 转 List<T> 
 public static <T> List<T> jsonToList(String jsonString, Class<T> clazz) { 
        return JSONArray.parseArray(jsonString, clazz); 
}

 

自测json字符串的小代码

String s1 ="{'a':1,'b':2}"; 
String s2 ="{'a':3,'b':4}"; 
List s = new ArrayList<String>(); 
s.add(s1); 
s.add(s2); 
JSONArray list = new JSONArray(s); 
System.out.println(list.toJSONString()); 
String res = list.toJSONString(); 
List<String> sts = JSONArray.parseArray(res,String.class); 
for (String string : sts) { 
    System.out.println(string); 
}

 

关于对json数组进行自定义排序

实体类:TestAA

public class TestAA { 
    private String a; 
    private String b; 
     
    public TestAA() { 
        super(); 
    } 
    public String getA() { 
        return a; 
    } 
    public void setA(String a) { 
        this.a = a; 
    } 
    public String getB() { 
        return b; 
    } 
    public void setB(String b) { 
        this.b = b; 
    } 
    public TestAA(String a, String b) { 
        super(); 
        this.a = a; 
        this.b = b; 
    } 
    @Override 
    public String toString() { 
        return "TestAA [a=" + a + ", b=" + b + "]"; 
    } 
 
}

 

进行自定义排序的代码

TestAA a1 = new TestAA("1", "2"); 
TestAA a2 = new TestAA("3", "2"); 
List s = new ArrayList<TestAA>(); 
s.add(a1); 
s.add(a2); 
JSONArray list = new JSONArray(s); 
System.out.println(list.toJSONString()); 
String res = list.toJSONString(); 
List<TestAA> sts = JSONArray.parseArray(res,TestAA.class);
//从大到小进行排序 Collections.sort(sts,
new Comparator<TestAA>() { public int compare(TestAA o1,TestAA o2) { return Integer.parseInt(o2.getA())-Integer.parseInt(o1.getA()); }; }); for (TestAA a : sts) { System.out.println(a.toString()); }

 

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/11166.html

(0)
上一篇 2021年7月19日
下一篇 2021年7月19日

相关推荐

发表回复

登录后才能评论