Spring

Entity 중복된 컬럼 제거

장진혁 2023. 3. 11. 01:16
주특기 숙련 주차에서 Lv.3 를 끝내고 피드백을 받았다.

그 username이 댓글 tablet에 컬럼으로 존재하는데
한번 username을 제거하고 user 객체를 통해서 조회할 수 있는 방향으로 바꿔보시겟어요?
PostService
	User user = jwtUtil.getUserInfo(request);
        // 요청받은 DTO로 DB에 저장할 객체 만들기, 토큰에 있는 작성자 이름을 같이 넣음
        // 새로운 post객체를 생성하여 저장하는 데 사용한다.
        Post post = postRepository.saveAndFlush(new Post(postRequestDto, user));
        return new PostResponseDto(post);
Post
    @ManyToOne
    @JoinColumn(name = "USER_ID", nullable = false)
    private User user;

    // @Column(nullable = false)
    // private String username;

    public Post(PostRequestDto postRequestDto, User user) {
        // this.username = user.getUsername();
        this.title = postRequestDto.getTitle();
        this.contents = postRequestDto.getContents();
        this.user = user;
user 안에 username이 들어있기 때문에 중복코드를 사용하고 있었다.
내가 username을 따로 쓴 이유는 데이터베이스에 사용자 id 말고도
이름이 있어야 되지 않을까라는 생각으로 추가했다.