美文网首页
Spring Data JPA 扩展开发(二)

Spring Data JPA 扩展开发(二)

作者: 贼孑 | 来源:发表于2017-09-14 13:06 被阅读122次

前言

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. 结束了,可以正常使用了。就是写个接口继承一下,而且还可以比原来少写继承呢,然后就拿去使用了。

代码

后补吧!

参考

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

相关文章

网友评论

      本文标题:Spring Data JPA 扩展开发(二)

      本文链接:https://www.haomeiwen.com/subject/xgqdsxtx.html