개발공부/[spring]호돌맨의 요절복통 개발쇼

[spring]@Builder(생성자의 순서가 바뀐다면?), ObjectMapper(데이터를 json형태로 변경하는 법)

개발자 덕구🐾 2022. 8. 19. 02:02
728x90

 

 

1. @Builder

 

    @Builder
    public PostCreate(String title, String content) {
        this.title = title;
        this.content = content;
    }

메서드에 builder어노테이션을 붙여준다.

작은 클래스라면 클래스 위에 붙여도 되지만 왠만하면 메서드 위에 붙이는 것이 좋다. 

이것은 lombok의  어노테이션 중 하나이다. 

 

 

이 어노테이션을 생성자에 붙이면 

 

PostCreate request = PostCreate.builder()
         .title("제목입니다.")
         .content("내용입니다.")
         .build();

이렇게 postCreate에 있는 변수에 각각 이름에 값을 넣어 build할 수 있다. 

이로써 생성자에 순서가 변경이 되는 상황이 생겨도 상관없이 객체를 생성할 수 있다. 

 

 

빌더의 장점 : 

- 가독성이 좋다.

- 필요한 값만 받을 수 있다. 

- 객체의 불변성 

 

< 추후에 자세히 찾아보기 , + 빌더패턴>

 

 

 

 

 

2. ObjectMapper

 

위에서 만든 request를 json형태로 바꾸는 방법은 ObjectMapper를 이용하는 것이다. 

 

// Json 형태로 가공
ObjectMapper objectMapper = new ObjectMapper();
String json = objectMapper.writeValueAsString(request);

 

 

이 처럼 request가 json으로 잘 변환되어 들어갔음을 알 수  있다. 

 

 

반응형