FastJson 不輸出空數組


在我們平時開發過程中,Java bean 轉JSON的時候有一些空數組,導致轉換后的多了很多 “無用” 的數據。

{

  student:{

  "name":"江南也少",

  "score": []

  }

}

這個時候我們希望這個沒有參加考試,也沒有分的同學,不用輸出score,該怎么辦呢?

我們可以定義一個Filter類

public class NotWriteEmptyList implement{

            @Override
            public boolean apply(Object o, String key, Object value) {
                if (value == null) {
                    return false;
                }
                if(value instanceof  String && ((String) value).isEmpty()){
                    return false;
                }
                if(value instanceof List && ((List) value).size() == 0){
                    return  false;
                }
                return true;
            }
       
}


在我們同String的時候new 一個Filter 傳進去就OK了

JSON.toJSONString(entity, new NotWriteEmptyList());

這樣就會得到如下的結果:

{

  student:{

  "name":"江南也少"

  }

}

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM