fastjson是Java中一個快速、低內存消耗的JSON解析庫,其效率遠高于其他常見JSON庫。其中,對象轉JSON字符串是fastjson最常用的功能之一。
// 創建一個Java對象 User user = new User(); user.setName("張三"); user.setAge(20); // 將Java對象轉為JSON字符串 String jsonStr = JSON.toJSONString(user); System.out.println(jsonStr);
以上代碼中,我們先創建一個Java對象User,并設置了其name和age屬性。接著,通過JSON.toJSONString()方法將Java對象轉為JSON字符串,最后輸出JSON字符串的內容。
fastjson對于對象轉JSON字符串的支持非常完善,不僅可以處理JavaBean,還可以處理List、Map和數組等類型的數據。
// 將List轉為JSON字符串 List<User> list = new ArrayList<>(); list.add(user); String jsonListStr = JSON.toJSONString(list); System.out.println(jsonListStr); // 將Map轉為JSON字符串 Map<String, User> map = new HashMap<>(); map.put("user", user); String jsonMapStr = JSON.toJSONString(map); System.out.println(jsonMapStr); // 將數組轉為JSON字符串 User[] arr = new User[]{user}; String jsonArrayStr = JSON.toJSONString(arr); System.out.println(jsonArrayStr);
以上代碼展示了fastjson如何處理List、Map和數組類型的數據,通過JSON.toJSONString()方法,可以快速將它們轉為對應的JSON字符串。
需要注意的是,當對象中屬性為null值時,fastjson默認會將其轉為JSON字符串中的null值,如果需要忽略null值,可以使用JSON.toJSONString(Object, SerializerFeature)方法中的SerializerFeature.IgnoreNull屬性。
// 忽略null值 String ignoreNullStr = JSON.toJSONString(user, SerializerFeature.IgnoreNull); System.out.println(ignoreNullStr);
以上代碼中,通過SerializerFeature.IgnoreNull屬性忽略了user對象中的空屬性,輸出的JSON字符串中不再包含null值。
fastjson的對象轉JSON字符串功能簡單易用,且支持多種數據類型的轉換,是Java開發中不可或缺的一款解析庫。
上一篇mysql代表色