gpt4 book ai didi

spring - 如何使用spring4 @RestController返回一个jsp页面?

转载 作者:行者123 更新时间:2023-12-04 13:19:14 26 4
gpt4 key购买 nike

当我像这样使用spring3 @Controller时:

@RequestMapping("/userCenter")

@Controller
public class LoginCtrl {
@RequestMapping("/loginPage")
public String login(HttpServletRequest request,HttpServletResponse response,Model model) throws Exception {
return "userCenter/loginPage";
}
}

可以,我在浏览器中获得了loginPage.jsp正确的内容。

但是当我将@Controller更改为@RestController时

localhost:8080//userCenter/loginPage返回带有字符串“userCenter/loginPage”的页面

那么,如何使用@RestController来获取像@Controller这样的jsp页面?

最佳答案

你不应该@RestController并不旨在通过String返回类型/值返回 View 名称。它的目的是返回将直接写入响应主体的内容。

更具体地说(在一般配置情况下),Spring MVC在RequestMappingHandlerAdapter#getDefaultReturnValueHandlers()中配置其返回值处理程序。如果您查看该实现,则String View 名称ViewNameMethodReturnValueHandler的处理程序将在@RestController(实际上是@ResponseBody)RequestResponseBodyMethodProcessor的处理程序之后注册

如果确实需要,则可以声明您的方法具有ViewModelAndView的返回类型(这些处理程序ViewMethodReturnValueHandlerModelAndViewMethodReturnValueHandler的注册在RequestResponseBodyMethodProcessor之前),并返回具有标识 View 名称的适当对象。

关于spring - 如何使用spring4 @RestController返回一个jsp页面?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26031254/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com