@RestController和@Controller的区别

@RestController

@RestController注解相当于@ResponseBody + @Controller合在一起的作用。

如果只是使用@RestController注解Controller,则Controller中的方法无法返回jsp页面,配置的视图解析器InternalResourceViewResolver不起作用,返回的内容就是Return 里的内容。

例如:

@RestController和@Controller的区别_第1张图片返回这个前端页面

如果我们只用@RestController这个注解的话

@RestController和@Controller的区别_第2张图片返回结果是

@RestController和@Controller的区别_第3张图片

@Controller

@Controller用于标记在一个类上,使用它标记的类就是一个Spring MVC Controller对象,分发处理器会扫描使用该注解的类的方法,并检测该方法是否使用了@RequestMapping注解。

@RestController和@Controller的区别_第4张图片

返回结果是

@RestController和@Controller的区别_第5张图片

总结:

如果只是返回数据的话用@RestController   如果是返回前端页面那就用@Controller

你可能感兴趣的:(SpringBoot,java,前端,servlet)