【发布时间】:2020-06-23 19:25:43
【问题描述】:
@RestController
公共类 IndexController {
@RequestMapping("/")
public String indexRoute() {
return JSON HERE;
}
假设以上是我的后端路由,有什么办法可以用 jsp 显示它吗? 我真的不想用 React 来嵌入它。
【问题讨论】:
标签: spring spring-boot spring-mvc
@RestController
公共类 IndexController {
@RequestMapping("/")
public String indexRoute() {
return JSON HERE;
}
假设以上是我的后端路由,有什么办法可以用 jsp 显示它吗? 我真的不想用 React 来嵌入它。
【问题讨论】:
标签: spring spring-boot spring-mvc
控制器:
@Controller
public class MyController {
@GetMapping("/json")
@ResponseBody
public MyResource idexJson() {
...
return res;
}
@GetMapping("/jsp")
public String input(final Model model) {
...
model.addAttribute(res);
return "index";
}
}
此外,您可能还需要额外的配置。例如:
属性:
spring.mvc.view.prefix= /WEB-INF/view/
spring.mvc.view.suffix= .jsp
依赖:
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
</dependency>
【讨论】:
是的,您可以使用 @RestController 注释您的类,以告诉 Spring 它的方法将返回 HTTP 响应正文(例如 JSON 格式)
你可以用@Controller注解另一个类,告诉Spring它的方法会返回一个视图名(比如JSP文件名)
【讨论】: