具体实现类
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
import java.util.List;
public class JsonBuilder {
private JSONObject jsonObject = new JSONObject();
public <T> JsonBuilder addParams(String key, T value) {
try {
if(!(value instanceof List)){
jsonObject.put(key, value);
}else {
JSONArray jsonArray = new JSONArray();
List<Object> tempList = (List<Object>) value;
for(Object object : tempList){
jsonArray.put(object);
}
jsonObject.put(key,jsonArray);
}
} catch (JSONException e) {
e.printStackTrace();
}
return this;
}
public String build() {
return jsonObject.toString();
}
}
实际用法
String reqJson = new JsonBuilder()
.addParams("uid", uid)
.addParams("room_id", KTVRoomManager.getInstance().getRoomInfo().getRoomId())
.addParams("target_uid", targetUid)
.addParams("target_nick_name", targetNickName)
.addParams("song_create_time", songCreateTime)
.addParams("song_id", songId)
.addParams("type", 5)
.build();
这样就可以获取一段json数据跟后台交互。