-
[SpringBoot] ManyToOne으로 설정된 엔티티 조회Back-end/TIL 2022. 3. 17. 09:18
# ManyToOne으로 설정된 엔티티 조회
//예시 Entity @Entity class PharmacyMenu { ... @ManyToOne(fetch = FetchType.EAGER) @JoinColumn(name = "upper_menu_id") private PharmacyMenu upperPharmacyMenu; ... } //예시 Repository 코드 @Query("select pm.id as id, " + "pm.upperPharmacyMenu.id as upperMenuId " + "from PharmacyMenu pm " + "where pm.id = :menuId") Optional<PharmMenuDetailResDtoVo> findByMenuId(@Param("menuId") Long menuId);
필요한 값은 upperPharmacyMenu의 id 값이므로 위와 같이 불러와야 한다.
//실행 쿼리문 select pharmacyme0_.id as col_0_0_, pharmacyme0_.upper_menu_id as col_1_0_ from pharmacy_menu pharmacyme0_ where pharmacyme0_.id=?
콘솔에 찍힌 실행된 쿼리문을 보면 내부 조인을 하지 않고 데이터베이스로부터 바로 upper_menu_id 값을 불러올 수 있다.
# 번외
관리자 시스템 화면 기획 업무를 받아서 피그마로 간단하게 그려본 뒤, 팀장님께 피드백을 받았다.
- 관리자 화면의 경우 기획자, 디자이너 없이 개발자가 구성하는 경우도 있다.
- 화면 구성에 대한 기존 레퍼런스 체크, 기존 화면과의 통일성 고려, 기능적 연결 고민(ex. 삭제 후 어떻게 되는지? DB 상에서 삭제가 되는지? 등)도 해봐야한다.
- 개발자가 주로 사용하는 화면의 경우 개발자 입장에서 구현이 편하게 화면을 구성해도 된다.
'Back-end > TIL' 카테고리의 다른 글