微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

实施Spring JPA时方法冲突

如何解决实施Spring JPA时方法冲突

spring-boot-starter-parent 2.3.2.RELEASE

我正在尝试像本教程中那样访问dababase:

https://spring.io/guides/gs/accessing-data-jpa/#_create_simple_queries

这是我的存储库:

package ru.pcask.clients.repositories;
import ru.pcask.clients.entities.Client;
import org.springframework.data.repository.CrudRepository;

public interface ClientRepository extends CrudRepository<Client,Long> {
    Client findById(Long id);
}

错误

'findById(Long)' in 'ru.pcask.clients.repositories.ClientRepository' clashes with 'findById(ID)' in 'org.springframework.data.repository.CrudRepository'; attempting to use incompatible return type

但是我得到了类似屏幕截图中的错误

enter image description here

解决方法

问题是您的退货类型。如上所述,方法findById(Long id)已在CrudReposistory<T,ID>中实现,它返回一个Optional<T>

您可以在代码中删除该方法(因为该方法已经存在),或者使用正确的返回类型Optional<Client>覆盖它。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。