解析报文后 组装javabean类java
代码简要说明node
// 结果数量 private int resultNum; // 线路名称 private String name; // 线路信息 private String info; // 沿途站点 private String stats; // 途径站点经纬度 private String statXys; // 线路坐标 private String xys; // 描述 private String description;
报文内容解析完成后,开始查询如何获取报文api
http://openapi.aibang.com/bus/lines?app_key=f41c8afccc586de03a99c86097e98ccb&city="+cityName+"&q="+lineapp
cityName 城市名称 line 公交线路ui
/** * 获取线路信息 * @param cityName * @param line * @return */ public static List<公交查询报文拆解类javabean> getBusInfo(String cityName,String line){ URL url = null; List<公交查询报文拆解类javabean> list = new ArrayList<Bus>(); try{ DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder = factory.newDocumentBuilder(); try { cityName = URLEncoder.encode(cityName,"utf-8"); line = URLEncoder.encode(line,"utf-8"); } catch (Exception e) { e.printStackTrace(); } url = new URL("http://openapi.aibang.com/bus/lines?app_key=f41c8afccc586de03a99c86097e98ccb&city="+cityName+"&q="+line); Document doc = builder.parse(url.openStream()); NodeList node = doc.getElementsByTagName("line"); for(int i=0;i<node.getLength();i++){ 公交查询报文拆解类javabean bus = new 公交查询报文拆解类javabean(); String name = ""; String info = ""; String stats = ""; String statXys = ""; String xys = ""; if(doc.getElementsByTagName("name").item(i).getFirstChild() != null){ name = doc.getElementsByTagName("name").item(i).getFirstChild().getNodeValue(); } if(doc.getElementsByTagName("info").item(i).getFirstChild() != null){ info = doc.getElementsByTagName("info").item(i).getFirstChild().getNodeValue(); } if(doc.getElementsByTagName("stats").item(i).getFirstChild() != null){ stats = doc.getElementsByTagName("stats").item(i).getFirstChild().getNodeValue(); } if(doc.getElementsByTagName("stat_xys").item(i).getFirstChild() != null){ statXys = doc.getElementsByTagName("stat_xys").item(i).getFirstChild().getNodeValue(); } if(doc.getElementsByTagName("xys").item(i).getFirstChild() != null){ xys = doc.getElementsByTagName("xys").item(i).getFirstChild().getNodeValue(); } bus.setName(name); bus.setInfo(info); bus.setStats(stats); bus.setStatXys(statXys); bus.setXys(xys); bus.setDescription(name + "\n" + info + "\n" + stats); list.add(bus); } }catch(Exception e){ e.printStackTrace(); } return list; }