问题描述
好吧,尝试使用Java Spring Hibernate后端和JPA存储库来更新MysqL数据库,并使用axios调用来响应前端。不确定是哪里出了问题,因为这是我第一次使用它。
@Modifying
@Query("UPDATE Item i SET i.title=?1 WHERE i.id=?2")
void editItem(@Param("title") String title,@Param("id") long id);
这是我使用axios从React打来的电话
Axios.put(`http://localhost:8080/editItem?title=${title}&id=${id}`)
这会导致我的后端出现错误
已解决的[org.springframework.web.bind.MissingPathVariableException:类型类型为Long的方法参数缺少URI模板变量'id'
很明显,传递ID时我做错了事,但是我一生都无法弄清楚
解决方法
@Modifying
@Query("UPDATE Item i SET i.title=?1 WHERE i.id=?2")
void editItem(String title,long id);
尝试仅删除@Param注释
当查询看起来像WHERE i.id =:id
时,Param正在使用