我目前正在通過構建一些簡單的專案來提高我的反應技能。今天我決定構建一個待辦事項應用程式,并且需要撰寫一個快速的后端(在春天,為什么不使用 lmao)。一切都像往常一樣順利(我按照 youtube 上的 amigos code 的 spring boot tutorial 2022 模式來設計后端),直到我嘗試用 postman 測驗 API,我意識到除了 put/update 方法之外一切正常。更詳細地說,每當我呼叫 API 的 put 方法時,我的物件都會在范圍內更新,但它不會在資料庫中持久化。
源代碼托管在 gh: React-todo-backend
我得到了一個 rest api put 方法,它呼叫我的 service put 方法來更新它的成員。
(Controller:put->Service:put->Entity.setVariables(variables))
我試過的:
- 在我的服務類中的 put 方法上方添加 @Transactional 注釋(曾經作業我不太確定新版本的 spring 是否改變了任何東西。)
- 我想過可能會洗掉物體并將其保存為資料庫中的新物體,但我的 id 是自動生成且唯一的,所以我可能不會采用這種方法,因為我不想自己更改資料(而不是用戶)。
提前感謝您的時間和幫助:)
(這也是我第一次在 stackoverflow 上發帖,所以我嘗試盡可能遵守規則,但如果我遺漏了什么,請告訴我,我會盡快修復它盡可能。)
- Windows 11、JDK 17、Spring 2.7.4、Mysql
uj5u.com熱心網友回復:
我查看了您的 github 專案并意識到您沒有使用存盤庫的 save() 方法來保存您的 ToDo,在 TodoService -> putTodo 中使用 todoRepository.save(todoOptional)。如果您不保存更改,則不會更新您要更新的行。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/514378.html
標籤:爪哇mysql弹簧靴后端
上一篇:SpringJPA異步保存
