1 回答
TA贡献1829条经验 获得超4个赞
回答你的问题,它没有做任何事情,因为你没有发送参数 Player (必须有效),因为你使用的是表单,这不是你应该这样做的方式。(请求参数通过 url 发送,你的表单应该通过 @RequestBody 发送)
我会做这样的事情:
在我的控制器上,由于我只能有一个@RequestBody,但是我的表单发送了一个包含多种类型对象数据的对象,我会做一个Dto
是这样的:
@PostMapping(value="/createNewTeam")
public Team createNewTeam(@Valid @RequestBody PayloadDto payloadDto) {
final Player player = new Player();
player.setPlayerName(payloadDto.playerName);
// fill player information
final Team team = new Team();
// fill team information...
playerRepository.save(player);
return teamRepository.save(team);
}
您的 PayloadDto 对象必须包含您发送的所有属性。
public class PayloadDto{
@JsonProperty("playerName")
public String playerName;
@JsonProperty("playerSurname")
public String playerSurname;
// .. more player and team properties
}
确保 jsonProperty("propertyName) 与您在发送信息时使用的名称相同
添加回答
举报