Spring Data JPA 扩展开发(二)

前言

JPA扩展主要有两种:一是直接针对某一个实体进行扩展;一是针对全局进行扩展。本次主要讲的是后者。
纲举目张啊!!!

具体步骤

为所有Repository提供公用的自定义方法:

  1. 声明一个接口,继承Repository接口或其子接口,并且声明需要添加的方法。
  2. 提供上述接口的实现类,并继承SimpleJpaRepository(这个方法就是JPA很多方法的实现)。注意:全局的扩展实现类就不要用RepositoryImpl作为后缀;而是添加@NoRepositoy

这个表示该接口不会创建这个接口的实例(我们原来定义的StudentPageRepository这些,Spring Data JPA的基础组件都会自动为我们创建一个实例对象,加上这个annotation,spring data jpa的基础组件就不会再为我们创建它的实例)

  1. 定义RepositoryFactoryBean的实现类,使用其生成1定义的接口实现类的对象。就是注册我们自己定义的Repository实现。写法具体参照Spring Data的JpaRepositoryFactoryBean和JpaRepositoryFactory。
  2. 配置,让spring加载时使用我们自定义这个工厂类。使用Springboot时,如下添加即可:
@EnableJpaRepositories(basePackages = {"org....."},
         repositoryFactoryBeanClass = ?????.class//指定自己的工厂类)
  1. 结束了,可以正常使用了。就是写个接口继承一下,而且还可以比原来少写继承呢,然后就拿去使用了。

代码

后补吧!

参考

其他网络文章与官网。
谢谢!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

友情链接更多精彩内容