<br />import java.beans.IntrospectionException;<br />import java.beans.Introspector;<br />import java.beans.PropertyDescriptor;<br />import java.util.List;</p><p>public class JsonUtil {</p><p>public static String objectToJson(Object object) {<br />StringBuilder json = new StringBuilder();<br />if (object == null) {<br />json.append("\"\"");<br />} else if (object instanceof String || object instanceof Integer) {<br />json.append("\"").append(object.toString()).append("\"");<br />} else {<br />json.append(beanToJson(object));<br />}<br />return json.toString();<br />}</p><p>public static String beanToJson(Object bean) {<br />StringBuilder json = new StringBuilder();<br />json.append("{");<br />PropertyDescriptor[] props = null;<br />try {<br />props = Introspector.getBeanInfo(bean.getClass(), Object.class)<br />.getPropertyDescriptors();<br />} catch (IntrospectionException e) {<br />}<br />if (props != null) {<br />for (int i = 0; i < props.length; i++) {<br />try {<br />String name = objectToJson(props[i].getName());<br />String value = objectToJson(props[i].getReadMethod()<br />.invoke(bean));<br />json.append(name);<br />json.append(":");<br />json.append(value);<br />json.append(",");<br />} catch (Exception e) {<br />}<br />}<br />json.setCharAt(json.length() - 1, '}');<br />} else {<br />json.append("}");<br />}<br />return json.toString();<br />}</p><p>public static String listToJson(List<?> list) {<br />StringBuilder json = new StringBuilder();<br />json.append("[");<br />if (list != null && list.size() > 0) {<br />for (Object obj : list) {<br />json.append(objectToJson(obj));<br />json.append(",");<br />}<br />json.setCharAt(json.length() - 1, ']');<br />} else {<br />json.append("]");<br />}<br />return json.toString();<br />}<br />} <br />
<br />