引入JPA找不到findOne方法
开发SpringBoot的DAO层之后,去测试的时候,发现findOne()这个方法找不到了,查看了对应的表字段名和实体类的属性都一致
找了半天没找到是什么原因,最后发现是依赖的版本出问题了
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.0.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
这里改为1.5.10之后,就可以正常引入了
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.10.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
记录一下,花了3个小时找这个问题。。
SpringDataJpa中findOne()方法报错
今天看了慕课网的springboot视频,然后自己跟着敲,发现了一个问题就是我的没有findOne(Integer id)这个方法,
因此我不能用这个方法去根据id查询了。
后来自己在网上查询资料发现,这个跟jpa的jar版本有关系。
spring-boot-starter-data-jpa
用SpringDataJPA的1.11版本,可以使用findOne()方法根据id查询。(网上说的)
我现在用的版本是2.0.3.RELEASE,是没有这个findOne(Integer id)方法的,但是你还是想根据id去查询,那怎么办呢?
解决方法
使用findById(id).get()来进行查询。
亲测,可用。
以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。