SpringBoot
注解
-
@Component
和@Bean
的区别:
两者都是将某个 Bean 装配到 Spring 容器中,但应用场景不同。@Component
通常用于我们自己编写的类(如 Controller、Service 等),直接加在类上;而@Bean
是用于方法上,方法返回的是要装配的对象,常用于配置类中装配第三方类或依赖(这些类无法直接加注解)。推荐在@Configuration
标注的类中使用@Bean
,否则 Spring 不会自动识别注册。 -
@RestController
和@Controller
的区别:
@Controller
用于传统的 MVC 开发,返回的是页面视图。如果要返回 JSON,需要额外加@ResponseBody
。而@RestController
则用于前后端分离项目,默认将返回值写入响应体,适合构建 RESTful 接口。 -
@RequestBody
:用于将 HTTP 请求体(如 JSON、XML)的内容映射到 Java 对象。 -
@PathVariable
:用于从 URI 路径中提取参数值并映射到方法参数,适用于 RESTful 接口。
2025/7/16大约 6 分钟