想使用 record 来替代原有的 VO DTO ,目前的实现属于有点为了用而用的感觉,求解有没有正确用法
目前是按业务定义了一个 record ,record 内定义了多个 record ,业务里直接引用 xxx.xxxRecord ,举例:
Record
public record UserRecord() {
public record LoginRequest(
@NotBlank(message = "请输入用户名")
String username,
@NotBlank(message = "请输入密码")
String password, int age) {
}
public record LoginResponse(Long uid, String username, String token) {
}
}
Service
public class UserService {
public UserRecord.LoginResponse login(UserRecord.LoginRequest r) {
var userinfo = userinfoMapper.selectById(1);
return new UserRecord.LoginResponse(
userinfo.getUid(),
userinfo.getUsername(),
StpUtil.getTokenValue());
}
}