Spring Boot 中常用的注解包括:
@SpringBootApplication
-
包含
@ComponentScan
、@Configuration
和@EnableAutoConfiguration
注解。 -
用于标识 Spring Boot 应用,开启 Spring Boot 的各项能力。
@ComponentScan
- 自动扫描组件,可自动发现和装配一些 Bean。
@Configuration
- 用于定制配置类,相当于 Spring 的 XML 文件。
@EnableAutoConfiguration
- 尝试根据添加的 jar 依赖自动配置 Spring 应用。
@Service
- 注解在类上,表示这是一个业务层 bean。
@Controller
- 注解在类上,表示这是一个控制层 bean。
@Repository
- 注解在类上,表示这是一个数据访问层 bean。
@Component
- 注解在类上,表示通用 bean,
value
不写默认就是类名首字母小写。
@Autowired
-
按类型注入,默认
required=true
。 -
当不能确定 Spring 容器中一定拥有某个类的 Bean 时,可以使用
@Autowired(required = false)
。
-
@Autowired
和@Qualifier
结合使用
- 自动注入策略从
byType
转变为byName
。
@Resource
- 按名称装配,默认按照名称方式进行 bean 匹配,与
@Autowired
默认按照类型方式进行 bean 匹配不同。
@RestController
- 注解是
@Controller
和@ResponseBody
的合集,表示这是个控制器 bean,并且是将函数的返回值直接填入 HTTP 响应体中,是 REST 风格的控制器。
@PathVariable
- 获取路径参数。
@JsonBackReference
- 解决嵌套外链问题。
@RepositoryRestResource
- 配合
spring-boot-starter-data-rest
使用。
-
@GetMapping
和@PostMapping
- 分别对应
@RequestMapping
注解的method
属性,简化 HTTP 方法的映射。
@RequestMapping
- 将 web 请求与请求处理类中的方法映射。
@Configuration
- 等同于 XML 配置文件,使用 Java 代码可以检查类型安全。
这些注解帮助开发者实现高效的 Spring Boot 应用开发。