spring data jpa 自定义接口实现
来源:互联网 发布:计算面积的软件 编辑:程序博客网 时间:2024/05/16 04:54
原文来自:http://blog.csdn.net/yingxiake/article/details/51017699
没错,spring data jpa很优秀,但有一些东西,我们就想自己来,我除了想用你的,还想用我自己的
首先,我要spring data jpa的接口,为什么,因为很方便啊
- 1
- 2
- 3
然后我想自己定义一些接口,咋办呢,那我就再定义个接口bean吧,然后再定义一些接口方法
- 1
- 2
- 3
- 4
- 5
那这里,我想要spring data jpa的,也想要我自己的,那我就继承吧
- 1
- 2
- 3
这时候,你在service应该就可以用method()方法了,但是这时候,method是空的,我们得自己来实现它,那实现吧
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
有心的朋友应该有注意到,为什么我实现TaskDaoCustom的bean不应该是TaskDaoCustomImpl吗?如果你这样子做的话,编译器就报错了
- 1
那为什么呢,因为任何继承了Repository(JpaRepository最终也是继承于Repository)spring都会为他生成一个实现类,因为TaskDao 继承于TaskDaoCustom,而TaskDaoCustom中的method不是spring data jpa规范查询方法的规则,如果就报找不到找不到属性了。
或许你会问,TaskDaoCustom不会有TaskDaoCustomImpl的实现类吗,按照spring文档说的,只要配置好实现的后缀名,就会用他来实现方法么,是的,我们是这样子配置后缀的,确实也有Impl。
- 1
- 2
- 3
- 4
- 5
- 6
这里要纠正一下,这里的实现spring data jpa规定命名方法是继承于spring data jpa Repository的那个命名 + Impl,例如我们是TaskDao继承于JpaRepository,如果实现类应该是TaskDaoImpl,而不是TaskDaoCustomImpl。
spring data jpa 秉承约定大于实现,只要按照规定和约定来,就能省很多麻烦事。
到这里,你应该就能自己自定义接口了,但这个对于模块是起到了作用,如果我在搭建项目,我想直接,定义 一个BaseDao,然后自定义一些常用的公共方法,然后再利用spring data jpa的优点,只要子模块,继承于BaseDao,就能同时拥有自定义的公用方法和spring data jpa的优点,该怎么做??下一篇再看看??
- spring data jpa 自定义接口实现
- spring data jpa 自定义接口实现
- spring data jpa 自定义接口
- Spring Data Jpa 自定义方法实现问题
- Spring Data Jpa 自定义方法实现问题
- Spring Data自定义接口实现
- Spring技术内幕之Spring Data JPA-自定义Repository实现
- Spring Data JPA 自定义查询
- spring data 自定义接口
- spring data Jpa hibernate实现
- spring data jpa 内部接口参照表
- spring data jpa 定义全局接口BaseDao
- Spring Data JPA 简单查询--接口方法
- spring data jpa 定义全局接口BaseDao
- 利用AOP为Spring Data Jpa的接口Repository添加全局自定义过滤
- Spring Data Jpa自定义sql查询返回
- Spring Data Jpa 自定义属性查询规则
- Spring Data JPA自定义native 查询
- 小朋友学C语言(15):“变量==常量”与“常量==变量”的区别
- week_5_ Integer to Roman
- 完整代码示例
- Error: Could not link: /usr/local/share/doc/homebrew
- nginx安装配置
- spring data jpa 自定义接口实现
- 小朋友学C语言(16):斐波那契数列的非递归实现
- 小朋友学C语言(17):斐波那契数列的递归实现
- Android学习之调用摄像头和相册
- hadoop搭建之ssh配置
- nw打包app流程
- css制作进度条下划线-经过时过渡到100,松开时过渡到0
- Javascript 面向对象编程(一):封装
- 机器学习算法应用场景