后端接受不到前端传的数据

问题遇到的现象和发生背景

后端封装dto内为起始和结束时间,但前端传入json时却获取不到,一直为null

问题相关代码,请勿粘贴截图

controller层
(

@RestController
@RequestMapping("/uu")
@Slf4j
public class UController {

    @Autowired
    private UserService userService;

    @PostMapping("/search2")
    public List search2(@Valid @RequestBody UserDto userDto){
        //一直获取userDto内的属性值为null
        log.info("userDto.getDateFrom:{},userDto.getDateTo:{}",userDto.getDateFrom(),userDto.getDateTo());
        return userService.search2(userDto);
    }

}
```)
封装的UserDto
```java
@Data
public class UserDto {

    private String DateFrom;

    private String DateTo;
}
运行结果及报错内容

img

img

我想要达到的结果

后端接收到前端传的两个参数值!谢谢

已解决啦,统一回复一下:
reason: dto命名不规范导致spring解析的时候获取的值不准确,应该改为小写,其次,在postman测试的时候注意传值,两个字段传入即可
solve:封装的dto字段规范命名,其次在postman测试时字段对应上
感谢:一剑荒芜、yedelzx、天蝎彬的宝贵建议!!!


{
  “DateFrom”:“”,
  “DateTo”:“”
}

这样就可以,
你那样传参表示,userDto是一个数组,数字的元素是一个变量,其实前端相当于只传了一个名为userDto的参数,类型是数组。然后你后端接受参数用的是一个类,框架会去找这个类里面名为userDto的变量,但是很明显没有,然后就是null了

格式错了,如果你接口没写错的情况下,你用postman测试应该是这样的
{
"DateFrom":"1999-12-18",
"DateTo":"2022-09-06"
}