Struts.xml配置返回JSON数据.docx
文本预览下载声明
Struts.xml配置返回JSON数据测试struts.xml中result参数的不同返回不同的json数据目的是为了比较result中type不同和result中参数的不同所产生的效果如果查询的是所有的数据,在action中定义的类型如下:private ListGoods entities;public ListGoods getEntities() {return entities;}第一种:在xml文件中如果没有param,内容如下:action name=goods class=cn.csdn.hr.action.GoodsActionresult type=json//action它得到的是json数据,但是autocomplete解析不出这样的json格式,所以读取不出来,结果为:{entities:[{id:2,name:老王 ,price:222.0},{id:1,name:老王 ,price:222.0},{id:3,name:老王 ,price:222.0},{id:4,name:老王 ,price:222.0},{id:5,name:老王 ,price:222.0}].第二种:如果加上param的name为多的那个对象,则可以返回的是json数据action name=goods class=cn.csdn.hr.action.GoodsActionresult type=jsonparam name=rootentities/param/result/action返回的数据为:[{id:2,name:老王 ,price:222.0},{id:1,name:老王 ,price:222.0},{id:3,name:老王 ,price:222.0},{id:4,name:老王 ,price:222.0},{id:5,name:老王 ,price:222.0}]可见返回的是json数据,并且在智能提示中可以提取出来,可以得知:param name=rootentities/param的意思是从根节点为entities的开始遍历,所有看到的数据就是json数据了。如果在action中封装的是一个实体,也就是查询的是一条数据,则代码为:private Goods entity;public Goods getEntity() {return entity;}响应的数据为:{entity:{id:1,name:老王 2,price:222.0}}如果加上param参数,则返回的是action name=goods class=cn.csdn.hr.action.GoodsActionresult type=jsonparam name=rootentity/param/result/action结果为:{id:1,name:老王 2,price:222.0}如果在action中的数据为:private ListGoods entities;private Goods entity;public ListGoods getEntities() {return entities;}public Goods getEntity() {return entity;}在xml文件中的数据为:action name=goods class=cn.csdn.hr.action.GoodsActionresult type=jsonparam name=rootentity/param/result/action则返回的只是entity对应的实体{id:1,name:老王 2,price:222.0}如果为:action name=goods class=cn.csdn.hr.action.GoodsActionresult type=jsonparam name=rootentities/param/result/action则返回的只是entities的实体,为[{id:2,name:老王 ,price:222.0},{id:1,name:老王 ,price:222.0},{id:3,name:老王 ,price:222.0},{id:4,name:老王 ,price:222.0},{id:5,name:老王 ,price:222.0}]如果在xml中的文件为:action name=goods class=cn.csdn.hr.action.GoodsActionresult type=jsonparam name=rootentities,entity/param/result/action那么返回的数据为:{id:1,name:老王 2,price:222.0}也就是谁在后面返回的是哪个.8.如果xml数据为:resu
显示全部