Java 如何在spring boot中从单个控制器返回内容数据和页面名

Java 如何在spring boot中从单个控制器返回内容数据和页面名,java,spring-boot,spring-restcontroller,Java,Spring Boot,Spring Restcontroller,我在SpringBoot做一个项目。在完成所有API部分并转到前端部分后,我意识到带注释的控制器只能返回数据,而不能返回页面名称。我找到了一个解决方案,用@controller注释创建另一个控制器,并在页面加载时用Javascript获取API数据。这没关系,但它需要我为我的每个实体创建另一组URL和控制器,这听起来是不必要的时间浪费。 有没有办法从@RestController同时返回页面名和JSON数据??与Django和laravels一样。您可以尝试将控制器数据包装到特定对象中,如 ab

我在SpringBoot做一个项目。在完成所有API部分并转到前端部分后,我意识到带注释的控制器只能返回数据,而不能返回页面名称。我找到了一个解决方案,用
@controller
注释创建另一个控制器,并在页面加载时用Javascript获取API数据。这没关系,但它需要我为我的每个实体创建另一组URL和控制器,这听起来是不必要的时间浪费。
有没有办法从
@RestController
同时返回页面名和JSON数据??与Django和laravels一样。

您可以尝试将控制器数据包装到特定对象中,如

abstract class AbstractResponse {
    String pageName;
}

class MyResponse extends  AbstractResponse{
    String field1;
    String field2;
    String field3;
    String field4;
}
在json中,什么会给你带来类似的东西

{
  "field1": "",
  "field2": "",
  "field3": "",
  "field4": "",
  "pageName": ""
}
或使用本文中讨论的modelAndView概念

Spring指南可能会有所帮助。您想在新页面中同时返回页面和json吗?是@BishalGautam