@restcontroller与 @controller的 区别;
- @restcontroller 返回的为 json格式的数据;
- @controller 返回的是字符串;使用 @controller要在前端页面展示数据需要配合html、jsp等视图渲染到前端, 如下controller层使用@controller注释方式;
总结:@restcontroller等价于@Controller +@ResponseBody
》
源码分析以及具体测试如下:
》 @restcontroller源码 /包含@Controller 、@ResponseBody
@Target({
ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
@Documented
@Controller
@ResponseBody
public @interface RestController {
@AliasFor(
annotation = Controller.class
)
String value() default "";
}
》 @controller 源码仅仅声明这是controller层:
@Target({
ElementType.TYPE})