개발노트

[2024.05.21] API 서버 DTO 작업중 본문

1인 개발 일지

[2024.05.21] API 서버 DTO 작업중

mroh1226 2024. 5. 21. 16:19
반응형

API 서버에서 DTO를 작성하여 원하는 JSON 데이터를 만들 수 있게 되었다.

전부 넘기는 것보다 효율적으로 데이터를 넘겨야한다.

(아래와 같이 보내면 클남.)

> GET Request를 2개 만들고 Cocktail만 불러오는 것 하나, Ingredient를 불러오는 것 하나 만들어서 프론트에서 categoryId를 통해 조건부로 나누자 

 

DTO 설계에 좀 더 디테일을 추가하고, 필요한 데이터만 가져올 수 있도록 다듬어보자.

그리고 화면 아이디어를 짜보자

 

배운점:

Entity 관계를 설정할 때(@OneToMany, @ManyToOne)
@JsonProperty를 사용하면 @JsonIgnore 로 직렬화에 제외된 필드를 추가할 수 있다.

 

예시)

    @ManyToOne(fetch = FetchType.LAZY)
    @JsonIgnore
    @JoinColumn(name = "category_id")
    private Category category;

    //@JsonIgnore로 직렬화를 제외하면서
    //@JsonProperty를 사용하여 필요한 필드는 추가해줌
    @JsonProperty("category_id")
    public Long getCategoryId() {
        return category != null ? category.getCategoryId() : null;
    }

 

반응형
Comments