Java 如何在@RestController响应中打印List()?

Java 如何在@RestController响应中打印List()?,java,spring,spring-boot,spring-4,Java,Spring,Spring Boot,Spring 4,我在Spring应用程序中有一个控制器,其代码如下: @RequestMapping("/") @ResponseBody public ResponseObject index(){ System.out.println(this.sf); Session session = sf.openSession(); List<Project> projects = session.createQuery("from Project").list(); s

我在Spring应用程序中有一个控制器,其代码如下:

@RequestMapping("/")
@ResponseBody
public ResponseObject index(){
    System.out.println(this.sf);
    Session session = sf.openSession();
    List<Project> projects = session.createQuery("from Project").list();
    session.close();
    System.out.println(projects);
    return new ResponseObject(projects);
}
但在所有情况下,我的JSON响应都是这样的:
{“data”:[{}],“error”:null}

项目
输出为:
[Project{id=1,name='Digital Project'}]


有人能告诉我为什么我的列表没有包含在JSON中吗?谢谢

受保护对象数据

改为


受保护列表数据

您需要返回如下响应:

return new ResponseEntity<List<Project>>(projects, HttpStatus.OK);
返回新的响应属性(projects,HttpStatus.OK);


假设类路径中有Jackson,如果使用Spring boot,则所有操作都将正确反序列化。您不需要ResponseObject类。

您是否检查了-执行以下操作时实际插入了多少个项目:ession.createQuery(“从项目”).list()?Hoi Gerrit;-)查看此:。不久前我问了一个关于ResponseObject的问题,也许这对你有用。更容易处理:
newresponseEntity(list,HttpStatus.OK)
return new ResponseEntity<List<Project>>(projects, HttpStatus.OK);