我正在研究休息 api。按 id 洗掉資料時出錯。所有代碼都是完整的,但不知道為什么郵遞員會報錯。我可以使用 hibernate 映射兩個具有單向映射的表。
下面是郵遞員的錯誤:
“訊息”:“缺少所需的請求正文:公共 org.springframework.http.ResponseEntity<org.springframework.http.HttpStatus> com.rest.RestApiPojo.Controller.PojoController.deleteAddressPerson(com.rest.RestApiPojo.Entity.Person, java.lang.Integer)"
下面是我的代碼:
物體
public class Person {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Integer person_id;
private String name;
@JsonManagedReference
@OneToOne(cascade = CascadeType.ALL, mappedBy = "person")
private Address address;
// getter setter
}
@Table(name = "address_master")
public class Address {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Integer address_id;
private String city;
private String country;
@JsonBackReference
@OneToOne(cascade=CascadeType.ALL, targetEntity = Person.class)
@JoinColumn(name = "person_id")
private Person person;
// getter setter
}
服務實作
@Override
public void deleteAddressPerson(Integer personId) {
personRepo.deleteById(personId);
}
控制器
@RequestMapping(value = "/dltpersonaddress/{personId}", method = RequestMethod.DELETE)
public ResponseEntity<HttpStatus> deleteAddressPerson(@RequestBody Person person, @PathVariable Integer personId)
{
pojoService.deleteAddressPerson(personId);
return new ResponseEntity<>(HttpStatus.OK);
}
uj5u.com熱心網友回復:
您的控制器方法中有一個未使用的@RequestBody Person person引數。
@RequestMapping(value = "/dltpersonaddress/{personId}", method = RequestMethod.DELETE)
public ResponseEntity<HttpStatus> deleteAddressPerson(@RequestBody Person person, @PathVariable Integer personId)
{
pojoService.deleteAddressPerson(personId);
return new ResponseEntity<>(HttpStatus.OK);
}
錯誤訊息說明此引數是強制性的,沒有它的請求將不會被處理。
洗掉引數以解決問題。
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/411351.html
標籤:
上一篇:遞回顯示所有可能的結果
下一篇:為什么無法執行孤兒移除?
