【问题标题】:Spring data - RepositoryRestResource PUT returns 200 but does not update objectSpring data - RepositoryRestResource PUT 返回 200 但不更新对象
【发布时间】:2021-07-14 18:17:00
【问题描述】:

我正在使用 Spring 的 HATEOAS 存储库:

@RepositoryRestResource(collectionResourceRel = "equipment", path = "equipment")
interface EquipmentRepository : PagingAndSortingRepository<Equipment, Int>

这是我的域对象:

@Entity
data class Equipment(
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    val id: Int?,
    val serialNumber: String?,
    val modelNumber: String,
    val make: String,
    val model: String,
    val year: Int,
    val purchaseDate: Date,
    val warrantyEnds: Date,
    val cost: Double
)

我正在使用 cURL 和 Postman 来创建设备,一切都很好。如果我使用 PATCH 进行部分更新,则查询会更新对象 - 如果我对 PUT 使用相同的 URL 和相同的数据,则不会更新任何内容,但我在邮递员中收到 200 响应(和旧对象)。

为什么我可以 PATCH http://localhost:8080/equipment/1 工作,但具有相同数据和相同端点的 PUT 返回 200 但不更新数据?

控制台/日志上的服务器端没有错误,或者任何关于为什么我得到 200 并且没有更新的迹象...

如果重要的话,我正在使用 Kotlin...

【问题讨论】:

    标签: kotlin spring-data-jpa spring-data


    【解决方案1】:

    尝试将val 更改为var,我遇到了同样的问题,这应该会有所帮助。

    【讨论】:

      猜你喜欢
      • 2019-08-11
      • 1970-01-01
      • 1970-01-01
      • 2017-11-10
      • 1970-01-01
      • 2021-01-24
      • 1970-01-01
      • 2018-06-25
      • 2017-09-02
      相关资源
      最近更新 更多