본문 바로가기

Dev97

[Spring] 의존성 주입(DI) 에 대해 알아보자 - 1 / 개요, Bean 정의 의존성 주입(DI)이 필요하게 된 배경 . 앤터프라이즈 애플리케이션 개발 시, 하나의 처리를 수행하기 위해 여러 개의 컴포넌트를 조합해서 개발하는 경우가 일반적이다. . '공통으로 사용되는 기능을 따로 분리한 컴포넌트', 'DB 접근을 위한 컴포넌트', '외부 시스템에 접속하기 위한 컴포넌트' 등이 있다. . 하나의 처리를 구현하기 위해 여러 컴포넌트를 통합할 때 의존성 주입이 필요하다. . 예를 들어, UserService의 Save 기능을 구현하기 위해서는 UserRepository나 PasswordEncoder클래스를 이용해서 구현해야 한다. 클래스 간 결합도가 높다 . 위에서 말했듯 UserServiceImpl 클래스를 개발하는 단계에서는 이미 UserRepository나 PasswordEncod.. 2022. 2. 28.
JPA 사용해서 무한 계층 댓글 구현해보기 - 03 이전 포스팅 JPA 사용해서 무한 계층 댓글 구현해보기 - 02 이전 포스팅 JPA 사용해서 무한 계층 댓글 구현해보기 (infinite depth) - 01 페이스북에서 보던 무한댓글(댓글의 댓글의 댓글의...) 은 어떻게 구현되는지 궁굼해서 이것저것 알아보다가 우연히 좋은 dkyou.tistory.com 2022. 1. 20.
JPA 사용해서 무한 계층 댓글 구현해보기 - 02 이전 포스팅 JPA 사용해서 무한 계층 댓글 구현해보기 (infinite depth) - 01 페이스북에서 보던 무한댓글(댓글의 댓글의 댓글의...) 은 어떻게 구현되는지 궁굼해서 이것저것 알아보다가 우연히 좋은 포스팅을 발견해서, 공부하고 응용해보는 작업을 해보려 한다. 1. 요구 dkyou.tistory.com 이전 포스팅에 이어 엔티티 개발을 시작해보자 3. 엔티티 개발 JPA를 까먹고 추가안했어서 추가해주었다. import lombok.*; import javax.persistence.*; import java.time.LocalDateTime; import java.util.ArrayList; import java.util.List; @Entity @Getter @Setter @EqualsAnd.. 2022. 1. 20.
JPA 사용해서 무한 계층 댓글 구현해보기 - 01 페이스북에서 보던 무한댓글(댓글의 댓글의 댓글의...) 은 어떻게 구현되는지 궁굼해서 이것저것 알아보다가 우연히 좋은 포스팅을 발견해서, 공부하고 응용해보는 작업을 해보려 한다. 1. 요구조건 및 개발 사항 정리 1. 엔티티 개발 하나의 테이블만 이용하여 구현 예정 self join 사용하여 무한 뎁스 구현 level 필드를 구현하여 depth에 따라 level별 분류하도록 구현 2. 리포지토리 개발 JpaRepository 사용하여 구현 3. DTO 개발 Entity는 순수하게 DB를 생성하고 DB하고만 소통하게 하기 위해 DTO구현 DTO는 비지니스 로직에서 사용하기 위해 구현 Entity에서 list로 담은 children을 DTO로 변환 구현 (stream, Collectors 사용) 4. 서비스.. 2022. 1. 20.