1 需求分析
分析商品分类所需要的数据类型为
最外层{“data”:[{},{}]}确定整个返回结果是一个类(最外侧是{}),类中包含了一个属性。属性叫data,类型是List,泛型是Object类型(后面写递归,所以才设置成Object)
分析每个菜单可能是两种类型:
第一层和第二层菜单包含了String url,String name; List<?> list属性的类
第三层菜单是String字符串
2 包装数据
包装data对象
package com.cdsxt.ego.beans;
import java.util.List;
/*
* 响应到前台的数据格式
*/
public class CatResult {
private List<?> data;
public List<?> getData() {
return data;
}
public void setData(List<?> data) {
this.data = data;
}
}
包装节点
package com.cdsxt.ego.beans;
import java.util.List;
import com.fasterxml.jackson.annotation.JsonProperty;
public class CatNode {
//将指定的Java对象转为json格式的对象
@JsonProperty(value="u")
private String url;
@JsonProperty(value="n")
private String name;
@JsonProperty(value="i")
private List<?> list;
public String getUrl() {
return url;
}
public void setUrl(String url) {
this.url = url;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public List<?> getList() {
return list;
}
public void setList(List<?> list) {
this.list = list;
}
}
3 服务端接口
//实现门户首页分类查询
public List<ItemCat> loadItemCatListService();
4 服务端实现类
@Override
public List<ItemCat> loadItemCatListService() {
// TODO Auto-generated method stub
ItemCatExample example = new ItemCatExample(