SpringDataJpa学习
---
在Spring Boot项目中,当你使用JPA的Repository时,确实不需要显式地在接口上添加@Repository注解。这是因为Spring Data JPA已经为我们简化了这一过程。Spring Data JPA项目提供了一些接口,如JpaRepository,这些接口继承自Spring Data的CrudRepository或者PagingAndSortingRepository接口,这些接口已经定义了一些通用的数据库操作方法。
当你创建一个继承自这些接口的接口时,Spring Data JPA提供了一个机制,能够自动检测这些接口并将它们创建为Spring管理的bean。这个机制被称为组件扫描(component scanning)。由于默认情况下,Spring Boot会自动扫描带有@Repository、@Service、@Controller、@RestController和@Component注解的类,并将它们注册为Spring的bean。因此,即使你的DAO层接口没有显式标注@Repository注解,只要它在一个被Spring Boot扫描到的包内,Spring就会自动识别它为一个DAO组件。