gpt4 book ai didi

java - Spring 休息 : Get JSON data from Request body in addition to entity

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:47:02 27 4
gpt4 key购买 nike

我正在使用 spring REST 处理 java 项目。

我的问题是在收到请求正文(json)后无法从请求正文中提取数据。

例如:

JSON 请求正文

{
"firstname": "Rayan",
"lastname": "Cold",
"company_id": 23
}

我的 Controller maaped 方法是:

@PostMapping("/employee")
public Employee createEmployee(@RequestBody Employee employee) {

// Here i need to extract the company id from request body
// Long companyId = *something* // how i can extract from request ?

return companiesRepository.findById(companyId).map(company -> {
employee.setCompany(company);
return employeeRepository.save(employee);
}).orElseThrow(() -> new ResourceNotFoundException("Company not found"));
}

我知道我可以将公司 ID 作为路径变量传递。但我确实希望它在请求正文中而不是在 URI 中。

谢谢

最佳答案

如果您的 Employee 类包含 companyId,则无法映射 company_id。

我猜你们公司的类(class)是这样的:

public class Employee {

private String firstname;
private String lastname;
private Long companyId;

//跳过getter setter }

将其更改为:

public class Employee {

private String firstname;
private String lastname;
@Transient
@JsonProperty("company_id")
private Long companyId;

//跳过getter setter

关于java - Spring 休息 : Get JSON data from Request body in addition to entity,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51467304/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com