SpringDataJpa2.0+的findOne()方法问题


在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)获取对象。

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM