【Debug记录】SpringDataJpa2的findOne()方法问题

2019/06/10

在2.0以上版本中,CrudRepository 接口的 findOne(T id) 方法已经被移除。

而如果在 Repository 中自己写 findById 则会报编译错误,提示与 CrudRepository 接口中的 Optional<T> findById(ID id) 方法返回值类型冲突,也就是说如果想用 id 这个字段来查询,就只能使用 CrudRepository 接口的 findById 方法,并且 id 只能是主键。

点进 Optional<T> 类,搜索返回值类型为 T 的方法,发现有 get 方法和 orElse 方法可以获取到我们想要查询的对象。

如果使用 get 方法,会提示先用 isPresent() 方法判空。建议使用 orElse(null) 获取对象。


(转载本站文章请注明作者和出处)

Show Disqus Comments

Post Directory