데이터를 한쪽에서 다른 한쪽으로 전달하기 위해서만 사용되는 데이터 전송 객체(혹은 DTO) 를 제대로 구현하기 위해서는 getter, equals, hashcode, toString 처럼 계속 똑같은 구조의 코드를 반복해서 작성해야 했다.
우리는 lombok의 @Getter를 통해 대체하고 있지만..
@Getter
@NoArgsConstructor
public class PassDto {
Long id;
String name;
Integer count;
}
record 레코드명 (컴포넌트1, 컴포넌트2, ... ) { }
@Getter
@NoArgsConstructor
public class PassDto {
Long id;
String name;
Integer count;
Integer price;
public PassDto (Long id, String name, Integer count, Integer price) {
this.id = id;
this.name = name;
this.count = count;
this.price = price;
}
}
public record PassDto (
Long id,
String name,
Integer count,
Integer price
) {
}