Java 如何在@RestController响应中打印List()?
我在Spring应用程序中有一个控制器,其代码如下: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
@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);