jsonObject对象与本地自定义对象相互转化
发布时间:2020-12-16 19:19:12 所属栏目:百科 来源:网络整理
导读:很多应用程序都设计客户端与服务器段的数据传输。现在比较流行的是以Json格式传输。但是JsonObject对象在本地处理比较麻烦,一个比较好的方法是与服务器进行数据交互时将自定义对象转化为JsonObject对象再进行传输。客户端接受到服务器的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 = jobj.getInt(Constants.SENDER); receiverId = jobj.getInt(Constants.RECEIVER); messageString = jobj.getString(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 type=message.type; if(type.equals(Constants.CHAT_MESSAGE)) { ChatContentMessage chatContentMessage=(ChatContentMessage)message; jsonObject.put(Constants.TYPE,chatContentMessage.type); jsonObject.put(Constants.SENDER,chatContentMessage.senderId); jsonObject.put(Constants.RECEIVER,chatContentMessage.receiverId); jsonObject.put(Constants.MESSAGE_CONTENT,chatContentMessage.msg); jsonObject.put(Constants.SEND_TIME,chatContentMessage.time); } return jsonObject.toString(); } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐
热点阅读