Android开发实现查询远程服务器的工具类QueryUtils完整实例
本文实例讲述了Android开发实现查询远程服务器的工具类QueryUtils。分享给大家供大家参考,具体如下:
/** *查询远程服务器的工具 *@authorchen.lin * */ publicclassQueryUtils{ privatestaticfinalStringTAG="CommonUtils"; privatestaticQueryUtilsinstance; privateSharedPreferencessp; privateQueryUtils(Contextcontext){ sp=context.getSharedPreferences(Constant.CONFIG,Context.MODE_PRIVATE); } publicstaticQueryUtilsgetInstance(Contextcontext){ if(instance==null){ synchronized(QueryUtils.class){ if(instance==null){ instance=newQueryUtils(context); } } } returninstance; } /** *请求服务器得到返回值 * *@paramkeyword *@return *@throwsException */ publicStringgetValue(Stringkeyword,StringreqType)throwsException{ StringreturnValue=null; //使用Map封装请求参数 Mapmap=newHashMap (); map.put("reqType",reqType); map.put("localIP",sp.getString(Constant.NETIP,"")); if(keyword!=null&&!"".equals(keyword)){ map.put("keyword",keyword); } Stringurl="http://"+sp.getString(Constant.NETURL,"")+"/ymerp/"+"ServiceDocumentServlet"; returnValue=HttpUtil.postRequest(url,map); returnreturnValue; } /** *请求服务器得到返回值 * *@paramkeyword *@return *@throwsException */ publicStringqueryServer(Stringkeyword,StringreqType,Stringservlet)throwsException{ StringreturnValue=null; //使用Map封装请求参数 Map map=newHashMap (); map.put("reqType",reqType); map.put("localIP",sp.getString(Constant.NETIP,"")); if(!TextUtils.isEmpty(keyword)){ map.put("keyword",keyword); } Stringurl="http://"+sp.getString(Constant.NETURL,"")+"/ymerp/"+servlet; returnValue=HttpUtil.postRequest(url,map); returnreturnValue; } /** *将json数组转换为Map对象 * *@paramjsonString *@return */ @SuppressLint("SimpleDateFormat") publicstaticHashMap getMap(StringjsonStr,Stringtitle,StringtimeStr){ SimpleDateFormatyymmdd=newSimpleDateFormat("yyyy-MM-dd"); JSONObjectjsonObject=null; Stringkey=null; Objectvalue=null; try{ jsonObject=newJSONObject(jsonStr); Iterator it=jsonObject.keys(); HashMap valueMap=newHashMap (); while(it.hasNext()){ key=(String)it.next(); value=jsonObject.get(key); if(key!=null&&title.equals(key)&&value!=null){ Stringvaluestr=value.toString(); if(valuestr.length()>15){ valuestr=valuestr.substring(0,13)+"..."; value=valuestr; } } if(key!=null&&timeStr.equals(key)){ try{ if(value!=null){ Datedate=(Date)value; value=yymmdd.format(date); }else{ valueMap.put(key,""); } }catch(Exceptione){ } } if(key!=null&&value!=null){ valueMap.put(key,value); } } returnvalueMap; }catch(JSONExceptione){ e.printStackTrace(); } returnnull; } }
更多关于Android相关内容感兴趣的读者可查看本站专题:《Android开发入门与进阶教程》、《Android视图View技巧总结》、《Android编程之activity操作技巧总结》、《Android操作SQLite数据库技巧总结》、《Android操作json格式数据技巧总结》、《Android数据库操作技巧总结》、《Android文件操作技巧汇总》、《Android编程开发之SD卡操作方法汇总》、《Android资源操作技巧汇总》及《Android控件用法总结》
希望本文所述对大家Android程序设计有所帮助。