接(上)的代码。Android客户端代码如下:
public class VideoActivity extends Activity { private Button btn_videonews; private ListView videoList; private List<News> newsList; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.videonews); btn_videonews = (Button) findViewById(R.id.Btn_down_news); videoList = (ListView) findViewById(R.id.Lv_videonews); btn_videonews.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { try { URL url = new URL("http://111.114.116.114:8080/Test/ListServlet"); HttpURLConnection httpURLConnection = (HttpURLConnection) url .openConnection(); httpURLConnection.setReadTimeout(5000); httpURLConnection.setRequestMethod("GET"); if (httpURLConnection.getResponseCode() == 200) { InputStream inputStream = httpURLConnection.getInputStream(); newsList = parseXML(inputStream); List<HashMap<String, Object>> data = new ArrayList<HashMap<String, Object>>(); for (News news : newsList) { HashMap<String, Object> item = new HashMap<String, Object>(); item.put("id", news.getId()); item.put("name", news.getName()); item.put("timeLength", news.getTimeLength()); data.add(item); } SimpleAdapter simpleAdapter = new SimpleAdapter( VideoActivity.this, data, R.layout.itme_news, new String[] { "name", "timeLength" }, new int[] { R.id.news_name, R.id.news_timeLength }); videoList.setAdapter(simpleAdapter); } } catch (Exception e) { e.printStackTrace(); } } }); } private List<News> parseXML(InputStream inputStream) throws Exception { List<News> newsList = new ArrayList<News>(); News news = null; XmlPullParser parser = Xml.newPullParser(); parser.setInput(inputStream, "UTF-8"); int event = parser.getEventType(); while (event != XmlPullParser.END_DOCUMENT) { switch (event) { case XmlPullParser.START_TAG: if ("id".equals(parser.getName())) { news = new News(); news.setId(new Integer(parser.nextText())); } else if ("name".equals(parser.getName())) { news.setName(parser.nextText()); } else if ("timeLength".equals(parser.getName())) { news.setTimeLength(new Integer(parser.nextText())); } break; case XmlPullParser.END_TAG:// 每一个带斜杠的都是endtag if ("news".equals(parser.getName())) { newsList.add(news); news = null; } break; default: break; } event = parser.next();// 不要忘了这句哟~ } Toast.makeText(this, "连接成功.200" + newsList.size(), 1000).show(); return newsList; } }