servlet端封装成json格式
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html; charset=UTF-8");
PrintWriter out = response.getWriter();
DBQueryImpl query = new DBQueryImpl();
ArrayList<NoticeBean> _list = query.getNotice(); //返回一个NoticeBean类
// 转为json格式
// JSONArray array = JSONArray.fromObject(_list);
JSONArray array = new JSONArray();
array.addAll(_list);
// 打印到网页上,不要打印方括号
String str=array.toString();
out.write(str);
out.flush();
out.close();
}
android端解析出来
private void getJSONString() {
String urlPath = "http://192.168.1.102:8080/epay_server/QueryNotice";
HttpClient client = new DefaultHttpClient();
HttpPost post = new HttpPost(urlPath);
try {
InputStream responseStream = client.execute(post).getEntity()
.getContent();
// 记得转换成gbk编码
BufferedReader bufferedReader = new BufferedReader(
new InputStreamReader(responseStream, "UTF-8"));
String webContentString = bufferedReader.readLine();
System.out.println("webCont==>" + webContentString);
// ItemParent item = new Gson().fromJson(webContentString,
// ItemParent.class);
// 生成类数组
NoticeBean[] _notice = new Gson().fromJson(webContentString, //自动解析成NoticeBean类
NoticeBean[].class);
ArrayList<NoticeBean> _list = new ArrayList<NoticeBean>();
for (NoticeBean noticeBean : _list) {
_list.add(noticeBean);
}
// 遍历list表
for (int i = 0; i < _notice.length; i++) {
System.out.println(_notice[i].get_content());
}
} catch (Exception e) {
System.out.println("解析失败!");
}
}