只有一个参数时使用 Dto 与 Primitive

Using Dto vs Primitive when there's only one parameter

如果请求中只有一个参数(例如,收到用于删除的 memberId),我应该将该参数绑定到 Dto 还是仅将其用作原语?

@DeleteMapping("/members/{memberId}")
ResponseEntity<String> deleteAccount(@PathVariable int memberId){
    memberService.deleteAccount(memberId);
    return ResponseEntity.status(HttpStatus.OK).body("");
}

VS

@DeleteMapping("/members/{memberId}")
ResponseEntity<String> deleteAccount(MemberDeleteDto member){
    memberService.deleteAccount(member);
    return ResponseEntity.status(HttpStatus.OK).body("");
}

我想说这没有规则,但我的建议是保持简单,并尽可能使用原语作为路径参数。除非你真的有充分的理由使用成熟的对象,否则我建议你不要过度设计它。