读书人

struts回来json数据格式

发布时间: 2013-02-15 15:46:56 作者: rapoo

struts返回json数据格式

?????? 最近在做手机的服务器端接口,对方要求返回json的数据给他们,之前没弄过,最好请教别人加自己摸索,终于搞出来,现在写下来,给大家留作参考

????? struts.xml里配置action

????

      <action name="viewCommodityInfo" method="commodityInfo" >      <result name="success" type="json">          <param name="root">resultTree</param>         </result>      </action>

?action中的代码

1、返回list类型

//获取商品信息 public String viewCommodityList() throws IOException{       List<Commodity> list = commodityService.getAllCommodity();Map mm = new HashMap();mm.put("commodityList", list); JSONObject jo= new JSONObject(mm);                  result = jo.toString(); getResponse().setContentType("application/json; charset=UTF-8"); getResponse().setHeader("Cache-Control", "no-cache"); // 取消浏览器缓存                   PrintWriter out = getResponse().getWriter();out.print(resultTree);out.flush();out.close(); return null; }

?2、返回实体类

??

public String commodityInfo() throws JSONException, IOException{ String uid = (String)ServletActionContext.getRequest().getParameter("uid"); Commodity ccommodity =new Commodity(); ccommodity.setUid(uid); ccommodity.setWant(null); commodity = commodityService.getCommodity(ccommodity).get(0); Map mm = new HashMap(); JSONObject jo = new JSONObject(commodity); mm.put("commodity", jo); JSONObject jo2 = new JSONObject(mm); result = jo2.toString(); getResponse().setContentType("application/json; charset=UTF-8"); getResponse().setHeader("Cache-Control", "no-cache"); // 取消浏览器缓存                    PrintWriter out = getResponse().getWriter(); out.print(result); out.flush(); out.close(); return null; }

?3、返回单个字段

?

 public String delCommodity() throws JSONException, IOException{// JSONObject demoJson = new JSONObject(jsonString);  String picId = (String)ServletActionContext.getRequest().getParameter("picId"); String[] ids = picId.split(","); JSONObject jo = new JSONObject(); if(ids.length>0){      if(commodityService.batchdel(ids)>0){     jo.accumulate("success", "true");     }else{     jo.accumulate("success", "false");     } }else{ jo.accumulate("success", "false"); }resultTree = jo.toString(); getResponse().setContentType("application/json; charset=UTF-8"); getResponse().setHeader("Cache-Control", "no-cache"); // 取消浏览器缓存         PrintWriter out = getResponse().getWriter();out.print(resultTree);out.flush();out.close(); return null; }

?? 里面用到的jar,就不多说了。

读书人网 >JavaScript

热点推荐