public class VideoNewsService
{
/*获取服务端资讯*/
public static List<News> getLastNews() throws Exception{
String path="http://192.168.1.100:8080/videonews/ListServlet";
URL url=new URL(path);
HttpURLConnection conn=(HttpURLConnection) url.openConnection();
conn.setConnectionTimeout(5000);
conn.setRequestMethod("GET");
if(conn.getResponseCode() == 200)
{
InputStream inStream = conn.getInputStream();
return parseXML(inStream);
}
return null;
}
/*解析服务器返回的xml数据*/
private static List<News> parseXML(InputStream inStream)
{
List<News> newses =new ArrayList<News>();
News news=null;
XmlPullParser parser = Xml.newPullParser();
parser.setInput(inStream,"UTF-8");
int event=parser.getEventType();
while(event != XmlPullParser.END_DOCUMENT)
{
switch(event)
{
case XmlPullParser.START_TAG:
if("news".equals(parser.getName()))
{
int id=new Integer(parser.getAttributeValue(0));
news = new News();
news.setId(id);
}else if("title".equals(parser.getName()))
{
news.setTitle(parser.nextText());
}
else if("timelength".equals(parser.getName()))
{
news.setTimelength(new Integer(parser.nextText()));
}
break;
case XmlPullParser.END_TAG:
if("news".equals(parseer.getName()))
newses.add(news);
news=null;
}
event = parser.next();
}
return newses;
}
}
main.xml
<ListView
android:layout_width="fill_parent";
android:layout_height="wrap_content"
android:id="@+id/listView"
/>
item.xml
<LinearLayout
<TextView
android:id="@+id/title"
>
<TextView
android:id="@+id/timelength"
>
</LinearLayout>
Android mainActivity:
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
ListView listview = (ListView) this.findViewById(R.id.listview);
List<News> videos =VideoNewsService.getLastNews();
List<HashMap<String , Object>> data =new ArrayList<HashMap<String,Object>>();
for(News news : videos)
{
HashMap<String,Object> item=new HashMap<String,Object>();
item.put("id",news.getId());
item.put("title",news.getTitle());
item.put("timelength",news.getTimelength());
data.add(item);
}
SimpleAdapter adapter = new SimpleAdapter(this,data,R.layout.item,new String[]{"title","timelength"},new int[]{R.id.title,R.id.timelength});
listView.setAdapter(adapter);
服务端
Web技术
1,新建servlet
public class ListServlet extends HttpServlet
{
private static final long serialVersionUID = 1L;
private VideoNewsService service =new VideoNewsServiceBean();
protected void doPost(HttpServletRequest request,HttpServletResponse response)throws ServletException,IOException
{
List<News> videos = service.getLastNews();
request.setAttribute("videos",videos);
request.getRequestDispather("/WEB-INF/page/videonews.jsp").forward(request,response);
}
}
News类
public class News
{
private Integer id;
private String title;
private Integer timelength;
public News(){}
public News(Integer id, String title,Integer timelength)
{
this.id= id;
this.title=title;
this.timelength=timelength;
}
public Integer getId()
{
return id;
}
public void setId(Integer id)
{
this.id=id;
}
public String getTitle()
{
return title;
}
public void setTitle(String title)
{
this.title=title;
}
public Integer getTimelength()
{
return timelength;
}
public void setTimelength(Integer timelength)
{
this.timelength = timelength;
}
}
VideoNewsServiceBean //实现类
public class VideoNewsServiceBean implements VideoNewsService
{
public List<News> getLastNews()
{
List<News> newses = new ArrayList<News>();
newses.add(new News(35,"喜洋洋",90));
newses.add(new News(12,"灰太狼",30));
newses.add(new News(56,"红太狼",40));
return newses;
}
}
public interface VideoNewsService
{
/*获取视频资讯*/
public List<News> getLastNews();
}
videonews.jsp
<%@ page language="java" contentType="text/xml; charset=UTF-8" pageEncoding="UTF-8"%> <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="C"%><?xml version="1.0" encoding="UTF-8"?>
<videonews><c:forEach item="${videos}" var="video">
<news id="${video.id}">
<title>${video.title}</title>
<timelength>${video.timelength}</timelength>
</news></c:forEach>
</videonews>
{
/*获取服务端资讯*/
public static List<News> getLastNews() throws Exception{
String path="http://192.168.1.100:8080/videonews/ListServlet";
URL url=new URL(path);
HttpURLConnection conn=(HttpURLConnection) url.openConnection();
conn.setConnectionTimeout(5000);
conn.setRequestMethod("GET");
if(conn.getResponseCode() == 200)
{
InputStream inStream = conn.getInputStream();
return parseXML(inStream);
}
return null;
}
/*解析服务器返回的xml数据*/
private static List<News> parseXML(InputStream inStream)
{
List<News> newses =new ArrayList<News>();
News news=null;
XmlPullParser parser = Xml.newPullParser();
parser.setInput(inStream,"UTF-8");
int event=parser.getEventType();
while(event != XmlPullParser.END_DOCUMENT)
{
switch(event)
{
case XmlPullParser.START_TAG:
if("news".equals(parser.getName()))
{
int id=new Integer(parser.getAttributeValue(0));
news = new News();
news.setId(id);
}else if("title".equals(parser.getName()))
{
news.setTitle(parser.nextText());
}
else if("timelength".equals(parser.getName()))
{
news.setTimelength(new Integer(parser.nextText()));
}
break;
case XmlPullParser.END_TAG:
if("news".equals(parseer.getName()))
newses.add(news);
news=null;
}
event = parser.next();
}
return newses;
}
}
main.xml
<ListView
android:layout_width="fill_parent";
android:layout_height="wrap_content"
android:id="@+id/listView"
/>
item.xml
<LinearLayout
<TextView
android:id="@+id/title"
>
<TextView
android:id="@+id/timelength"
>
</LinearLayout>
Android mainActivity:
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
ListView listview = (ListView) this.findViewById(R.id.listview);
List<News> videos =VideoNewsService.getLastNews();
List<HashMap<String , Object>> data =new ArrayList<HashMap<String,Object>>();
for(News news : videos)
{
HashMap<String,Object> item=new HashMap<String,Object>();
item.put("id",news.getId());
item.put("title",news.getTitle());
item.put("timelength",news.getTimelength());
data.add(item);
}
SimpleAdapter adapter = new SimpleAdapter(this,data,R.layout.item,new String[]{"title","timelength"},new int[]{R.id.title,R.id.timelength});
listView.setAdapter(adapter);
服务端
Web技术
1,新建servlet
public class ListServlet extends HttpServlet
{
private static final long serialVersionUID = 1L;
private VideoNewsService service =new VideoNewsServiceBean();
protected void doPost(HttpServletRequest request,HttpServletResponse response)throws ServletException,IOException
{
List<News> videos = service.getLastNews();
request.setAttribute("videos",videos);
request.getRequestDispather("/WEB-INF/page/videonews.jsp").forward(request,response);
}
}
News类
public class News
{
private Integer id;
private String title;
private Integer timelength;
public News(){}
public News(Integer id, String title,Integer timelength)
{
this.id= id;
this.title=title;
this.timelength=timelength;
}
public Integer getId()
{
return id;
}
public void setId(Integer id)
{
this.id=id;
}
public String getTitle()
{
return title;
}
public void setTitle(String title)
{
this.title=title;
}
public Integer getTimelength()
{
return timelength;
}
public void setTimelength(Integer timelength)
{
this.timelength = timelength;
}
}
VideoNewsServiceBean //实现类
public class VideoNewsServiceBean implements VideoNewsService
{
public List<News> getLastNews()
{
List<News> newses = new ArrayList<News>();
newses.add(new News(35,"喜洋洋",90));
newses.add(new News(12,"灰太狼",30));
newses.add(new News(56,"红太狼",40));
return newses;
}
}
public interface VideoNewsService
{
/*获取视频资讯*/
public List<News> getLastNews();
}
videonews.jsp
<%@ page language="java" contentType="text/xml; charset=UTF-8" pageEncoding="UTF-8"%> <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="C"%><?xml version="1.0" encoding="UTF-8"?>
<videonews><c:forEach item="${videos}" var="video">
<news id="${video.id}">
<title>${video.title}</title>
<timelength>${video.timelength}</timelength>
</news></c:forEach>
</videonews>