Spring Boot2.X中findOne的使用詳解
SpringBoot在1.5.X版本中,傳入id即可查詢對象
xxxRepository.findOne(id);但在2.X中,findOne改為了
<S extends T> Optional<S> findOne(Example<S> var1);
getOne方法繼續保留了,但是如果getOne(id)查詢到的即使id不存在,也會返回該對象的引用,判斷null無效。
后來找到了這種寫法可以實現
findOne. xxxRepository.findById(id).orElse(null)JpaRepository.findOne()在springboot1.x和2.x中的不同的用法
已有開發環境如下
Windows平臺 jdk1.8、maven已配置 開發工具:Intellij IDEA在使用springboot 1.5.6.RELEASE時JpaRepository支持findOne(ID)方法
T findOne(ID id);<S extends T> Optional<S> findOne(Example<S> example);2.x版本已無法使用 T findOne(ID id)
下面是解決辦法
@Override public AyUser selectAyUserById(Integer id) { AyUser ayUser = new AyUser(); ayUser.setId(id); Example<AyUser> example = Example.of(ayUser); Optional<AyUser> optional = ayUserRepository.findOne(example); if (optional.isPresent()){ ayUser=optional.get(); return ayUser; }else{ return null; } }
記錄一下,方便查詢!
以上為個人經驗,希望能給大家一個參考,也希望大家多多支持好吧啦網。
相關文章:
1. vue-drag-chart 拖動/縮放圖表組件的實例代碼2. vue使用moment如何將時間戳轉為標準日期時間格式3. Android studio 解決logcat無過濾工具欄的操作4. 什么是Python變量作用域5. js select支持手動輸入功能實現代碼6. PHP正則表達式函數preg_replace用法實例分析7. Android Studio3.6.+ 插件搜索不到終極解決方案(圖文詳解)8. bootstrap select2 動態從后臺Ajax動態獲取數據的代碼9. Android 實現徹底退出自己APP 并殺掉所有相關的進程10. 一個 2 年 Android 開發者的 18 條忠告
