[Springframework] Dto개념 익히기
안녕하세요 【키보드 워리어】 블로그 방문자 여러분, 안경닦이입니다.
스프링 개발을 하면서 생소했던 개념인 Dto에 대해 적어보려고 합니다.
@Getter
@RequiredArgsConstructor//final 필드값 생성자 형성
public class HelloResponseDto {
private final String name;
private final int amount;
}
단순한 구성입니다.
롬복기능을 통해 @Getter 코드를 만들어주었고
RequiredArgsConstructor어노테이션은 final 필드값을 생성자 형성을 해주는 어노테이션입니다.
저는 이 코드를 작성할 때 뭔가 Entity어노테이션과 비슷하다고 생각했습니다.
'아니, Getter,생성자를 해주면 Setter만 추가해 주면 Entity어노테이션 쓴 것과 차이가 없잖아?'
궁금한 건 바로 바로 검색해 보는 게 제 특징이라 한번 검색해 보니 역시나 저만 이렇게 궁금했던 게 아니었더군요,,
먼저 Entity의 역할부터 정확히 얘기하자면 데이터베이스와 소통하는 어노테이션이라는겁니다.
참고하시면 좋은 글
2023.04.14 - [Spring framework] - [spring framework] @Entity와 @Component의 차이
[spring framework] @Entity와 @Component의 차이
안녕하세요 【키보드 워리어】 블로그 방문자 여러분 오늘은 @어노테이션 @Entity와 @Component의 차이점을 알아보겠습니다. @Entity와 @Component Spring을 통해Web 개발 시 어려웠던 여러 가지 어노테이션
keyboardwarrior.tistory.com
https://www.youtube.com/watch?v=z5fUkck_RZM&t=467s
@GetMapping("/hello/dto")
public HelloResponseDto helloDto(@RequestParam("name") String name,
@RequestParam("amount") int amount) {
return new HelloResponseDto(name, amount);
}
HelloResponseDto를 직접 써보는 메서드입니다.
@RequstParam을 받고 있어요.
@RequestParam은 스프링 프레임워크에서 사용되는 어노테이션 중 하나로, HTTP 요청 파라미터를 메서드의 매개변수에 바인딩할 때 사용합니다.
즉, 클라이언트가 브라우저로 HTTP GET 또는 POST 요청을 보낼 때 요청 파라미터로 데이터를 전송하면, 이 요청 파라미터의 값을 컨트롤러 메서드에서 받아서 처리할 수 있도록 도와주는 역할을 합니다. 예를 들어, 위와 같이 @RequestParam을 사용하여 name이랑 amount 두 개의 요청 파라미터 값을 받아올 수 있습니다.