您的位置:首頁/技術文章
文章詳情頁

java - spring-data Jpa 不需要執行save 語句,Set字段就可以自動執行保存的方法?求解

瀏覽:178日期:2023-10-20 18:35:54

問題描述

public Optional<User> requestPasswordReset(String mail) { return userRepository.findOneByEmail(mail).filter(User::getActivated) .map(user -> {// updata user.setResetKey(RandomUtil.generateResetKey()); user.setResetDate(Instant.now()); return user;}); }

//進入斷點,通過后端查看打印結果,發現先執行select語句,然后又執行update語句,我不是很明白為什么set以后//不需要save方法,就可以update

跟代碼以后,走到這個方法,就執行update語句,求那位大神看見,教下我,本人非常感謝!一定一定關注你。

java - spring-data Jpa 不需要執行save 語句,Set字段就可以自動執行保存的方法?求解

問題解答

回答1:

從你的的截圖來看,我并沒看到哪里執行了update語句。按照我的使用經驗來看,是要調用save方法才會更新的

回答2:

java - spring-data Jpa 不需要執行save 語句,Set字段就可以自動執行保存的方法?求解

回答3:

應該是JPA發現你的對象dirty,在Transaction commit之前自動執行了。

標簽: java
国产综合久久一区二区三区