首页 > 代码库 > JSON的使用
JSON的使用
最近在项目中大量的使用了JSON, 发现JSON和XML的功能相近,都是一种数据传输格式。只是与XML相比JSON显得更加轻量级,使用也更加容易。
JSON依赖的第三方jar包:
commons-beanutils.jar
commons-collection.jar
commons-lang.jar
commons-logging.jar
ezmorph-1.0.6.jar
json-lib-2.4-jdk15.jar
总结发现JSON字符串与Java对象的相互转换有以下三种情况:
(1)Java Bean对象与JSON字符串的相互转换
(2)Java 数组与JSON字符串的相互转换
(3)Java List与JSON字符串的相互转换
下面是我写的一个JSON工具类:
1 package nuc.wss.util; 2 3 import java.util.List; 4 5 import net.sf.json.JSONArray; 6 import net.sf.json.JSONObject; 7 8 /** 9 * 10 * JsonUtil类的静态方法封装了Java对象与JSON字符串相互转换的操作11 */12 public class JsonUtil {13 /**14 * 将JSON字符串转化为Java对象15 * 16 * @param jsonString JSON字符串17 * @param clazz Java对象对应的class18 * @return 返回Java对象19 */20 @SuppressWarnings("rawtypes")21 public static Object jsonStringToBean(String jsonString, Class clazz) {22 JSONObject jsonObject = JSONObject.fromObject(jsonString);23 return JSONObject.toBean(jsonObject, clazz); 24 }25 26 /**27 * 将Bean对象转化为JSON字符串28 * 29 * @param object 将被转化的对象30 * @return 返回转化后的JSON字符串31 */32 public static String beanToJsonString(Object object) {33 return JSONObject.fromObject(object).toString();34 }35 36 /**37 * 将JSON字符串转化List38 * 39 * @param jsonArrayString 被转化的JSON字符串40 * @param clazz List的类型参数所对应的类41 * @return 返回List对象42 */43 @SuppressWarnings("rawtypes")44 public static List jsonArrayStringToList(String jsonArrayString, Class clazz) {45 JSONArray jsonArray = JSONArray.fromObject(jsonArrayString);46 return (List)JSONArray.toCollection(jsonArray, clazz);47 }48 49 /**50 * 将List对象转化为JSON字符串51 * 52 * @param list 将被转化的List对象53 * @return 返回JSON字符串54 */55 @SuppressWarnings("rawtypes")56 public static String listToJsonArrayString(List list) {57 return JSONArray.fromObject(list).toString();58 }59 60 /**61 * 将JSON字符串转化为Java数组62 * 63 * @param jsonArrayString 被转化的JSON的字符串64 * @param clazz 数组类型对应的类65 * @return 数组66 */67 @SuppressWarnings("rawtypes")68 public static Object[] jsonArrayStringToArray(String jsonArrayString, Class clazz) {69 JSONArray jsonArray = JSONArray.fromObject(jsonArrayString);70 return (Object[])JSONArray.toArray(jsonArray, clazz);71 }72 73 /**74 * 将Java数组转化为JSON字符串75 * 76 * @param array 被转化的数组77 * @return JSON字符串78 */79 public static String arrayToJsonArrayString(Object[] array) {80 return JSONArray.fromObject(array).toString();81 }82 }
JSON的使用
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。