在spring jpa hateoas中更新外键

时间:2017-03-28 19:00:09

标签: spring hibernate spring-mvc spring-data-rest http-put

我使用的是与我的另一个问题相同的代码:Accessing data jpa with rest getting started + entity bike that has foreign key on person entity

问题是我无法更新自行车实体中的person_id值。我尝试使用这个命令:

curl -i -X PUT -H "Content-Type:application/json" -d "{ \"name\" : \"Frodos Bike name is changed\", \"person\" : \"http://localhost:8080/people/2\" }" http://localhost:8080/bikes/1

但它不起作用。名称值会更改,但person_id保持不变。

请注意,我确实有一个ID = 2的人,并且可以通过网址访问:http://localhost:8080/people/2

更新此字段的正确方法是什么?

1 个答案:

答案 0 :(得分:2)

PUT适用于curl -i -X PUT -H "Content-Type:application/json" -d '{"_links": {"person": {"href" : "/people/2"}}} http://localhost:8080/bikes/1/person

PATCHcurl -i -X PATCH -H "Content-Type:application/json" -d "{ \"name\" : \"Frodos Bike name is changed\", \"person\" : \"/people/2\" }" http://localhost:8080/bikes/1