@Autowired获取
请教为什么实现类中可以直接获取GirlReponsitory对象,但在接口GirlReponsitory上没有Bean装载的注解呀。是因为继承了JpaRepository接口的缘故吗?
请教为什么实现类中可以直接获取GirlReponsitory对象,但在接口GirlReponsitory上没有Bean装载的注解呀。是因为继承了JpaRepository接口的缘故吗?
2018-01-22
就如上例:
@Autowired private GirlRepository girlRepository;
GirlRepository继承了JpaRepository接口,通过源码,你可以看到JpaRepository有一个叫做@NoRepositoryBean的注解,它意味着,不会再运行实例化这个接口,然而,JpaRepository接口的实现类为SimpleJpaRepository
SimpleJpaRepository有一个注解叫做@Repository ,他会完成Bean装载的操作
@Repository之于持久层就像@Service之于业务层而已,所以你完全可以把它看成另一种@Service,自然有DI的操作在里面。
就酱~~~~~~~~~~~~~~
举报