java json格式化工具类

    import java.beans.IntrospectionException; 
    import java.beans.Introspector; 
    import java.beans.PropertyDescriptor; 
    import java.util.List; 
     
    /**
     * 
     * @author kingschan
     * @version 1.0
     * Json 字符串生成工具类
     * <P>
     * 传入数扰载体,生成json格式字符串
     * </p>
     */ 
    public class JsonUtil { 
        /**
         * @param object
         *            任意对象
         * @return java.lang.String
         */ 
        public static String objectToJson(Object object) { 
            StringBuilder json = new StringBuilder(); 
            if (object == null) { 
                json.append("\"\""); 
            } else if (object instanceof String || object instanceof Integer) { 
                json.append("\"").append((String) object).append("\""); 
            } else { 
                json.append(beanToJson(object)); 
            } 
            return json.toString(); 
        } 
     
        /**
         * 功能描述:传入任意一个 javabean 对象生成一个指定规格的字符串
         * 
         * @param bean
         *            bean对象
         * @return String
         */ 
        public static String beanToJson(Object bean) { 
            StringBuilder json = new StringBuilder(); 
            json.append("{"); 
            PropertyDescriptor[] props = null; 
            try { 
                props = Introspector.getBeanInfo(bean.getClass(), Object.class) 
                        .getPropertyDescriptors(); 
            } catch (IntrospectionException e) { 
            } 
            if (props != null) { 
                for (int i = 0; i < props.length; i++) { 
                    try { 
                        String name = objectToJson(props[i].getName()); 
                        String value = objectToJson(props[i].getReadMethod() 
                                .invoke(bean)); 
                        json.append(name); 
                        json.append(":"); 
                        json.append(value); 
                        json.append(","); 
                    } catch (Exception e) { 
                    } 
                } 
                json.setCharAt(json.length() - 1, '}'); 
            } else { 
                json.append("}"); 
            } 
            return json.toString(); 
        } 
     
        /**
         * 功能描述:通过传入一个列表对象,调用指定方法将列表中的数据生成一个JSON规格指定字符串
         * 
         * @param list
         *            列表对象
         * @return java.lang.String
         */ 
        public static String listToJson(List<?> list) { 
            StringBuilder json = new StringBuilder(); 
            json.append("["); 
            if (list != null && list.size() > 0) { 
                for (Object obj : list) { 
                    json.append(objectToJson(obj)); 
                    json.append(","); 
                } 
                json.setCharAt(json.length() - 1, ']'); 
            } else { 
                json.append("]"); 
            } 
            return json.toString(); 
        } 
    } 

猜你喜欢

转载自xzhijun-893.iteye.com/blog/1744234