본문 바로가기

백엔드2

패키지 분리 1차 api - domain -> api - domain - infra 필요성 현재 저희가 개발중인 워시핏 플랫폼은 module-domain에서 entity와 repository를 같이 묶어놓고 쓰고 있습니다. repository는 interface로, jparepository를 상속받아 사용중입니다. 이 구조가 문제는 없지만 혹여나 ORM을 추가하거나 바꾼다는 시나리오가 발생한다면 모두 다 바꾸어야 하는 문제점이 발생합니다. 이를 해결하기 위해 첫 시도로는 모듈 분리는 수행하지 않고 api의 repository 호출하는 service를 interface로 변경, serviceImpl을 추가하여 구현체로 바꾸었고 이곳에선 repository에게 데이터 요청을 보낼 reader, store 인터페이스를 추가하여 실질적인 데이터 요청은 infra 단에서 구현체를 구현 후 이 두.. 2024. 2. 2.
springboot 2.4 이후의 환경설정 profile 분리 방법 0. 환경파일 분리의 필요성 스프링부트 3.1.5 환경에서 JPA를 공부하기 위해 맨 밑바닥부터 시작하고 있다. 기존에 일일이 파일을 만들고 설정해줘야 했던 스프링 레거시와 maven을 활용했기 때문에 스프링부트 환경이 참 어떤면에선 원클릭으로 파일 자체도 줄어들어 편하기도하고, 아직은 생소하다. 아무튼 환경을 잡을 줄 알아야 이후 개발, 배포까지 수월하기 때문에 제일 먼저 이뤄지고 알아야 할 개념이라 생각들어 이번 기회에 환경분리 방법부터 알아보고자 한다. 실제로 상용에선 로컬환경, 개발환경, 운영환경 등으로 각각 값이 달라지기 때문에 설정 파일을 profile 화 하여 쪼개고 변화 된 환경에서 필요시 해당 profile을 불러와 쓰는 것이 기본이다. 1. application.propertice와 a.. 2023. 10. 26.