entity repository
엔티티 정의가 리포지토리 호출로 이어지는 순서
엔티티를 정의했다고 바로 서비스에서 쓸 수 있는 것은 아니다. 모듈에 엔티티를 등록하고, 서비스에 repository를 주입해야 데이터 접근 경로가 완성된다.
순서: Entity 등록 후 Repository 주입forFeature와 InjectRepository가 같은 엔티티를 바라봐야 한다.
TypeORM 연동 순서
1Entity
User 클래스를 테이블 구조로 선언한다.
2forRoot
DB 연결과 전체 엔티티 로딩 방식을 설정한다.
3forFeature
현재 모듈에서 사용할 엔티티를 등록한다.
4InjectRepository
서비스 생성자에 Repository<User>를 주입한다.
5Query
save, find, update 같은 메서드로 작업한다.
핵심 코드 경계
TypeOrmModule.forFeature([User])
constructor(@InjectRepository(User) private users: Repository<User>) {}핵심: 엔티티 이름이 forFeature, InjectRepository, Repository 타입에서 같은지 먼저 본다.