我目前正在通过构建一些简单的项目来提高我的react 技能.今天,我决定构建一个ToDo应用程序,并且需要编写一个快速的后端(在 spring ,为什么不是lmao).一切都很正常(我遵循了YouTube上的amigos code的Spring Boot教程2022模式来设计后端),直到我try 用Postman测试API,我意识到除了PUT/UPDATE方法以外,一切都很好.更详细地说,每当我调用API的PUT方法时,我的对象都会在作用域中更新,但不会持久保存在数据库中.

源代码托管在GH:React-todo-backend

我得到了一个REST API PUT方法,它调用我的服务PUT方法来更新其成员.
(Controller:put->Service:put->Entity.setVariables(variables))

我try 了什么:

  • 在我的服务类中的PUT方法上添加@Transaction注释(用于工作,我不太确定新版本的Spring是否改变了什么.)
  • 我想也许可以删除实体并将其保存为数据库中的新实体,但我的id是自动生成的,并且是唯一的,所以我可能不会遵循这种方法,因为我不想自己(而不是用户)更改数据.

Thanks for your time and help in advance :)
(Its also my first time posting on stackoverflow so and I tried following the rules as much as possible but in case I missed anything please let me know and I'll try to fix it as soon as possible.)

  • Windows 11、JDK 17、Spring2.7.4、MySQL

推荐答案

我查看了您的GitHub项目,发现您没有使用存储库的save()方法来保存您的Todo,而是使用TodoService->;putTodo中的todoRepository.save(TodoOptional).如果您不保存更改,则不会更新您要更新行.

Java相关问答推荐

RxJava PublishSubject缓冲区元素超时

SpringBootreact 式Web应用程序的Spring Cloud Configer服务器中的资源控制器损坏

如何获得执行人?

如何调整工作时间日历中的时间

在springboot 3中,当我调用api endpoint时,会出现404

如何将其他属性引用到log4j2 yaml配置中?

如何在antlr4中跳过所有反斜杠-换行符而保留换行符?

在VS代码中,如何启用Java Main函数的&Q;Run|DEBUG&Q;代码?

EXCEL中的公式单元格显示#NAME?

如何根据配置动态创建N个bean

从泛型枚举创建EnumMap

Java.time.OffsetDateTime的SQL Server数据库列类型是什么?

在整数列表中查找和可被第三个整数整除的对时出现无法解释的RunTimeError

为什么相同的数据条码在视觉上看起来不同?

如何通过用户ID向用户发送私信

Cucumber java-maven-示例表-未定义一步

在输入端没有可行的替代方案'; Select *';

java中的网上购物车解析错误

java.exe如何执行java源代码?

为什么 Random() 的行为不符合预期?