【问题标题】:Why does not delete data in rest api为什么不删除rest api中的数据
【发布时间】:2022-01-13 11:29:14
【问题描述】:

我正在研究rest api。按 id 删除数据时出错。所有代码都是完整的,但不知道为什么邮递员会报错。我可以使用 hibernate 映射两个具有单向映射的表。

下面是邮递员的错误:

“消息”:“缺少所需的请求正文:公共 org.springframework.http.ResponseEntity 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
}

ServiceImpl

@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);
}

【问题讨论】:

  • 你不需要 @RequestBody Person person 参数在deleteAddressPerson(在你的控制器中),是吗?
  • @Lesiak 谢谢问题解决了

标签: spring-boot hibernate


【解决方案1】:

您的控制器方法中有一个未使用的@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);
}

错误消息说明此参数是强制性的,没有它的请求将不会被处理。

删除参数以解决问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-12-19
    • 1970-01-01
    • 1970-01-01
    • 2017-05-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多