Spring Data JPA查询结果为空时遇到的问题

遇到的问题

在使用Repository接口时遇到了若findBy方法的查询结果为空时会报空指针异常java.lang.NullPointerException,而查询结果不为空时能够经过测试。html

本文首发于个人我的博客 技术公馆(wcc.im)Spring Data JPA查询结果为空时遇到的问题

解决方法

在网上搜索到的使用Repository报空指针异常的缘由可能是由于注入的问题,没有使用@Autowired,但这并不适用于我遇到的问题。java

在肯定位置后,发现个人报错出如今findBy方法。最后在官方文档中查到对于Repository中的方法须要专门处理结果为空时的状况。若使结果可为空,须要在方法前加@Nullable注解。spring

因此只需将segmentfault

interface UserRepository extends Repository<User, Long> {                 

    User findByName(String name);

}

改成post

interface UserRepository extends Repository<User, Long> {                 

    @Nullable
    User findByName(String name);

}

便可。测试

本文首发于个人我的博客 技术公馆(wcc.im)
原文连接: https://wcc.im/zh/post/empty-result-in-spring-data-jpa/
本博客内文章除特别声明外均为原创,采用 CC BY-NC-SA 4.0 许可协议进行许可。超出 CC BY-NC-SA 4.0 许可协议的使用请联系做者得到受权。
相关文章
相关标签/搜索