스프링부트를 시작할 때 난해한 것이 코드의 흐름이다.
스프링부트는 프레임워크이기 때문에 흐름의 이해만 하면 사용이 편하고 유지보수와 수정이 편하다.
다만, 굳이 메뉴얼대로 지키려고 하면 더 어려울 수 있다.
스프링부트는 기본적으로 Controller, Service, Repository 또는 Mapper 의 순서로 구성된다.
이 4가지 파일을 템플릿 형태로 만들어 두면 추후에 복사, 붙여넣기를 통해 필요한 서비스를 만들 수 있다.
스프링부트 / SpringBoot
템플릿 파일 만들기 파일의 목적 살펴보기
Spring Boot ( 이하 스프링부트 ) 를 공부하면서 스프링레거시나 SpringMVC 와 차이가 있다.
본인의 경우 SpringMVC를 하면서 maven과 mybatis에 익숙하지만, SpringBoot를 접하면서 gradle 과 jpa 를 다시 학습하는 계기가 되었다.
다시금 구조가 난해해지고, 초심자가 되는 기분이지만, 결과적으로 기본만 숙지하면 이것도 어려운 것이 아니었다.
단지, 참고할 만한 코드들이 너무 다르고, 개발자마다 편차가 크기에 검색만으로는 한계가 있었다.
흐름을 파악하고, 파일들의 규칙을 이해하고, 정리를 해 보니 아래와 같은 모습이 되었다.
참고로 본인의 경우 파일 단위가 아닌 업무 단위로, 로직의 흐름대로 정리하다 보니 위와 같은 구조가 되었을 뿐이다.
개발자마다 성향이 다르고, 회사마다 규칙이 있으니, 위의 모양은 그저 참고용으로만 바라보자.
- Entity
자바 객체와 데이터베이스 테이블을 매핑하는 역할 - Builder
객체 생성 도구, 자바 객체를 쉽게 생성하는 역할 - Controller / RestController
https 또는 http 의 요청을 처리하고 응답을 보내준다.
사용자가 요청한 URL 로 이동하거나 요청받은 데이터를 표시한다. - Service
비즈니스 로직을 구현한다.
이것은 정해진 규칙에 따라 데이터를 처리하는 순서나 방법
프로그램이 실행되는 순서나 방법 정도로 볼 수 있다. - Repository / Mapper
데이터베이스와 연동하고 테이블에 접근하여 데이터를 조작할 수 있도록 하는 인터페이스.
CRUD ( Create, Read, Update, Delete ) 를 할 수 있도록 한다.
댓글
댓글 쓰기