1.SpringDataJPA (查询:主键或其他字段、增加/修改、分页) 2021最新技术~方便快捷 博主可答疑

一、查询方法(一开始,错误比较多,根据主键查询):getone()

①.No property错误:无法找到deptID的映射(这个deptid必须跟数据库的字段意义对应才行,否则是歇菜的)

jpa屁事最多!类还需要有规定的命令

②.查询出来的结果是null:根据ID查询,查询出来的字段是空的。

发现有问题在这里打断点跑

发现的确 one是其他是Null

然后再去数据库查看,打开数据库会发现多了这三个字段

所以我感觉这里应该修改数据库名字为"_",所以对应的PO类(持久层的类)也要修改为"_"。而不是用我这种驼峰命名,然后成功查询出。

实则在Dao层根本不需要写接口,因为我们继承了JPARepository的接口,直接调用其中的getone()方法,就自动根据主键查询结果了!

二.增加/修改方法:save

  操作增加与更新操作,又遇见No property saveByMemID found for type Member!   又是命名规范,save接口的命令规范

调用的是JPARepository的接口, 根本不用自己写接口,报错就是因为自己写了接口,把自己写的接口删去就可以正常运行了!只需要在实现类中写入save方法即可!!!!

然后测试成功

三、通过其他字段查询:findBy+属性+(关键字)

又报错!!!

修改方法名,不可以带"_"

它给我提示用memDeptID,然后修改为他提醒的!!然后成了

为什么要ID会大写呢?  因为数据库中的这个字段与另外一个表有联系的,可见数据库中的id为deptID

四、分页:PageRequest方法

首先在Service写分页接口

然后去实现类,发现readOnly了,

发现根本没有这方法。直接跳过。

出现:'PageRequest(int, int, org.springframework.data.domain.Sort)' has protected access in 'org.springframework.data.domain.PageRequest' 错误

调用of就行了

测试:

成功!!

五、各种类型的算法高频面试题汇总:

https://blog.csdn.net/qq_40262372/article/details/112556249

六.群里已有字节、滴滴、腾讯大佬,可帮忙内推!也欢迎其他大厂的工作人士进群!帮忙内推~

QQ群:725936761

七、B站视频讲解如何三个月学习JAVA拿到实习Offer:

https://www.bilibili.com/video/BV1dV411t71K

猜你喜欢

转载自blog.csdn.net/qq_40262372/article/details/112916551