List<Object>及 JSONArray互转工具方法

来源:互联网 发布:linux 启动openoffice 编辑:程序博客网 时间:2024/05/16 19:20

在coding中,我发现很多时候我们都需要把一个list/array存到数据库,
然后在需要返回给前端的时候,或者我们需要操作这个的时候,我们需要把这个string又转换成List< Object>,奇怪的是fastJson的JSONArray居然不提供这个功能。而net.sf.json则是有这个功能了。
没办法,加jar肯定不好,那只有自己搞定了。


/**     * 根据JSONArray String获取到List     * @param <T>     * @param <T>     * @param jArrayStr     * @return     */    public static <T> List<T> getListByArray(Class<T> class1,String jArrayStr) {        List<T> list = new ArrayList<>();        JSONArray jsonArray = JSONArray.parseArray(jArrayStr);        if (jsonArray==null || jsonArray.isEmpty()) {            return list;//nerver return null        }        for (Object object : jsonArray) {            JSONObject jsonObject = (JSONObject) object;            T t = JSONObject.toJavaObject(jsonObject, class1);            list.add(t);        }        return list;    }    /**     * 根据List获取到对应的JSONArray     * @param list     * @return     */    public static JSONArray getJSONArrayByList(List<?> list){        JSONArray jsonArray = new JSONArray();        if (list==null ||list.isEmpty()) {            return jsonArray;//nerver return null        }        for (Object object : list) {            jsonArray.add(object);        }        return jsonArray;    }
0 0