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();<span style="white-space:pre"> </span>//返回一个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,<span style="white-space:pre"> </span>//自动解析成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("解析失败!"); } }