弹簧控制器返回404,但restcontroller ok


@RequestMapping("/api/test")
@Controller
public class TestController {
@RequestMapping("/html")
public String retHtml() {
return "<html></html>";
}
}

我有一个非常简单的控制器。我可以访问api时,它有@RestController的注释,但它返回404的http状态时,注释变成@Controller

这种行为的可能原因是什么?

首先,您将获得404未找到错误,因为当您将java类注释为@Controller时,Spring期望在控制器方法中返回视图路径,但您返回的是<"html"><"html">非路径. 第二,代码语法错误。返回类型与实际返回的类型不匹配(<&quot;html"><&quot;html">)。如果你想实现一个Spring MVC控制器,只需将返回类型替换为String并返回一个视图路径;否则,如果你想有RestApi,用@RestController注释类并返回一个ResponseEntity对象。

最新更新