我想以Json格式把后台取出的List传到前台页面里.
我用ResponseEntity<HttpEntity>可以完成,但是由于是个list,每个元素没有变量名.
代码如下:
@RequestMapping(value="/project/list",method = RequestMethod.GET)
public ResponseEntity<HttpEntity> listProject(){
List<Project> projects = projectService.listAllProjects();
return new ResponseEntity(projects, HttpStatus.OK);
}
Json数据如下:

我要取前四个的数据的name,photoId等属性渲染到页面中.
这样的数据怎么取值?
我想给他们一个变量名于是修改代码:
@RequestMapping(value="/project/list",method = RequestMethod.GET)
public ResponseEntity<HttpEntity> listProject(Model model){
List<Project> projects = projectService.listAllProjects();
model.addAttribute("project", projects);
return new ResponseEntity(model, HttpStatus.OK);
}
这样的话我可以用${project[i].name}去某个project的任意属性. 但是现在报错stackoverflowError
栈溢出.
总结一下问题:
最根本的问题是想实现取某个project的某个属性.
两种方法分别遇到了不同的问题. 求解决...
------解决方案--------------------
你的 JSON 遍历有问题。
function a(jsondata){
othis=this
$.each(jsondata,function(a,v){
//a 属性命,v值
if(typeof v =="object"){
othis(v)
}
}
}
------解决方案--------------------
循环,直接data[index].name