关于JPA中findOne、getOne、findById 的差别
findOne:return 如果没有找到,则使用给定id或{@literal null}的实体。
getOne:return 对具有给定标识符的实体的引用。什么意思呢:查询数据库一个id的数据,发现查询出来的数据都是空的,但不是空的对象是按照对象默认值来的。就是在定义实体类时你对属性有的的定义。
getOne返回一个实体的引用,无结果会抛出异常;
findById返回一个Optional对象;
findOne返回一个Optional对象,可以实现动态查询;
而Optional代表一个可能存在也可能不存在的值。
最后还有一点
Jpa2以后就没有findOne方法了
结论:使用findOne 或者findById
引用:https://www.cnblogs.com/shenyanrushang/p/10852497.html