jsonObject对象与本地⾃定义对象相互转化
很多应⽤程序都设计客户端与服务器段的数据传输。现在⽐较流⾏的是以Json格式传输。但是JsonObject对象在本地处理⽐较⿇烦,⼀个⽐较好的⽅法是与服务器进⾏数据交互时将⾃定义对象转化为JsonObject对象再进⾏传输。客户端接受到服务器的jsonObject 数据时将其解析为本地⾃定义对象再对其进⾏处理,这样也⽐较符合⾯向对象统⼀编程的思想。
/**
* 从将JSONObject数据转化为Message对象并返回
*
* @param jobj
* 待转换的JSONObject对象
* @return 转换后的Messageclass对象
*/
public static Message castJsonToMessage(JSONObject jobj) {
String typeString = "", sendTimeString = "";
int senderId = -1, receiverId= -1;
String messageString = "";
try {
senderId = Int(Constants.SENDER);
receiverId = Int(Constants.RECEIVER);
messageString = String(Constants.MESSAGE_CONTENT);
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
ChatContentMessage chatContentMessage =new ChatContentMessage(typeString, senderId, receiverId,
messageString, sendTimeString);
return chatContentMessage;
}
/**
* 将Message类对象转化为JSONObject并以字符串形式返回便于SOCKET发送
*
* @param message
* 待转换的消息对象
* @return
* @throws JSONException
*/
public static String castMessageclassToJsonStr(Message message)
throws JSONException {
JSONObject jsonObject = new JSONObject();
String pe;
if(type.equals(Constants.CHAT_MESSAGE))
{
ChatContentMessage chatContentMessage=(ChatContentMessage)message;
jsonObject.put(Constants.TYPE, pe);
jsonObject.put(Constants.SENDER, chatContentMessage.senderId);
object to jsonObject.put(Constants.iverId);
jsonObject.put(Constants.MESSAGE_CONTENT, chatContentMessage.msg);
jsonObject.put(Constants.SEND_TIME, chatContentMessage.time);
}
String();
}
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论