quarkus - 如何使用 Panache 更新已经持久化的实体?
问题描述
我正在用华丽的 quarkus 编写 JaxRS 资源,我注意到我无法让 PUT/PATCH 请求工作。更具体地说,我似乎无法更新数据库中以前持久化的实体。我想我做错了什么,但后来我尝试了 quarkus-quickstart for panache,可以在这里找到,我注意到PUT在那里也不起作用。
它所做的是使用该findById
方法获取一个实体,更改该实体,然后返回该更改的实体。但它实际上并没有在数据库中改变它。对于快速入门,我按照 README 中的建议使用 docker 设置数据库。
更新已持久化的 Panache 实体的推荐方法是什么?
示例请求流
这些是我通过 quarkus 快速入门得到的请求和响应:
GET
本地主机:8080/水果。- 回复:
[ {"persistent": true, "id": 1, "name": "Cherry"} ]
- 回复:
PUT
本地主机:8080/fruits/1,正文:{ "name": "edited name" }
- 回复:
{ "persistent": false, "id": 1, "name": "edited name" }
- 回复:
GET
本地主机:8080/水果- 回复:
[ {"persistent": true, "id": 1, "name": "Cherry"} ]
- 回复:
解决方案
我们可以用“我确认这是 0.12.0 中的错误。它已在 master 中修复,即将到来的 0.13.0 修复它。”来自评论。
推荐阅读
- php - 检查在线花费的总时间从数据库中获取日期时间值并使用 php 按日期过滤它们
- jpa - 如何在 Spring JpaRepository 中使用 JPQL 选择组中的最新记录?
- javascript - 在Javascript中异步等待是否等待所有嵌套函数完成?
- python - Keras - Translation from Sequential to Functional API
- go - Godoc 文档不输出列表
- docker - PhpStorm not displaying xdebug as stopped on breakpoint (docker)
- authentication - 如何一般将 localhost 代理到经过身份验证的远程后端?
- amazon-web-services - 从 AWS lambda 函数将指标推送到 Prometheus Pushgateway
- python - 如何存储从多个列表生成的随机整数
- java - 为泛型类型属性重载/覆盖 isEmpty() 的最佳方法