
上QQ阅读APP看书,第一时间看更新
2.6 Repository的实现类SimpleJpaRepository
SimpleJpaRepository是JPA整个关联数据库的所有Repository的接口实现类。如果想进行扩展,可以继承此类,如QueryDsl的扩展,还有默认的处理机制。如果将此类里面的实现方法看透了,基本上JPA的API就能掌握大部分。同时也是Spring JPA动态代理的实现类,包括我们后面讲的Query Method。
我们可以通过Debug视图看一下动态代理过程,如图2-6所示。

图2-6
SimpleJpaRepository的部分源码如下:

可以看出SimpleJpaRepository的实现机制还挺清晰的,通过EntityManger进行实体的操作,JpaEntityInforMation里面保存着实体的相关信息以及crud方法的元数据等,后面章节会经常提到此类,到时再慢慢讲解。