Java关于JSON数据格式转换(二)

2014-11-24 02:33:32 · 作者: · 浏览: 1
json.append("\"").append(dateToJson((Date)obj)).append("\"");
101
} else {
102
json.append("\"").append(stringToJson(obj.toString())).append("\"");
103
}
104
return json.toString();
105
}
106

107
/**
108
* 这里是描述这个方法的作用
109
* @param obj
110
* @return {["pname":"val"],["pname":"val"]...}
111
* @author Java
112
* @date 2011-7-22 下午03:02:49
113
*/
114
public static String beanToJson(Object obj) {
115
StringBuffer json = new StringBuffer("{");
116
try {
117
PropertyDescriptor[] pds = PropertyUtils.getPropertyDescriptors(obj);
118
if(pds != null && pds.length > 0){
119
for (PropertyDescriptor pd : pds) {
120
if(pd.getName().equals("class"))
121
continue;
122
String pname = objectToJson(pd.getName());
123
String val = objectToJson(pd.getReadMethod().invoke(obj));
124
json.append(pname);
125
json.append(":");
126
json.append(val);
127
json.append(",");
128
}
129
json.setCharAt(json.length() - 1, '}');
130
}else{
131
json.append("}");
132
}
133
} catch (Exception e) {
134
e.printStackTrace();
135
}
136
return json.toString();
137
}
138

139
public static String beanToJson(Object obj, String params) {
140
StringBuffer json = new StringBuffer("{");
141
try {
142
PropertyDescriptor[] pds = PropertyUtils.getPropertyDescriptors(obj);
143
if(pds != null && pds.length > 0){
144
for (PropertyDescriptor pd : pds) {
145
String pname = pd.getName();
146
if(pname.equals("class"))
147
continue;
148
if(params.indexOf(pname) == -1)
149
continue;
150
pname = objectToJson(pname);
151
String val = objectToJson(pd.getReadMethod().invoke(obj));
152
json.append(pname);
153
json.append(":");
154
json.append(val);
155
json.append(",");
156
}
157
json.setCharAt(json.length() - 1, '}');
158
}else{
159
json.append("}");
160
}
161
} catch (Exception e) {
162
e.printStackTrace();
163
}
164
return json.toString();
165
}
166

167

168
/**
169
* 这里是描述这个方法的作用
170
* @param obj
171
* @return
172
* @see
173
* @author Java
174
* @date 2011-7-22 下午03:02:27
175
*/
176
public static String mapToJson(Map< , > map) {
177
StringBuilder json = new StringBuilder();
178
json.append("{");
179
if (map != null && map.size() > 0) {
180
for (Object key : map.keySet()) {
181
json.append("" + objectToJson(key) + "");
182
json.append(":");
183
json.append("" + objectToJson(map.get(key)) + "");
184
json.append(",");
185
}
186
json.setCharAt(json.length() - 1, '}');
187
} else {
188
json.append("}");
189
}
19