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 許可協議的使用請聯繫做者得到受權。
相關文章
相關標籤/搜索