ApexSoft
Day 3 - SpringBoot
- Web, JPA, H2, Lombok, DevTools, Actuator
- New > Project from Existing Sources... > build.gradle 선택
- 선택한 컴포넌트가 없으면, mvnrepository에서 찾아서 직접 작성
- import
- spring-starter-*
- Lombok: annotation processor
- 인텔리J에서 Lombok 플러그인 설치
- test, compile
- profile
- 우선 순위
- @Value, @ConfigurationProperties
- 인텔리J에서 Lombok 플러그인 설치
- Preferences > annotation processors 로 검색
- enable...
log4j
java.util.logging
- private static final Logger logger =
LoggerFactory.getLogger(HelloController.class);
- @SLF4J
- Parameterized Logging: {}
- 디버그 모드로 실행
- 일반 breakpoint
- 조건부 breakpoint
- step into, step over, ...
참고자료: http://www.slideshare.net/hanmomhanda/spring-mvc-fullflow
(회원 관리를 개발한다면 회원 객체가 도메인 객체)
- Repository(DAO)-DB
- 서비스-도메인, Repository(DAO)
- 컨트롤러-서비스
- 컨트롤러-Mock서비스
- 서비스-MockRepository(DAO), 도메인
- Repository(DAO)-DB
- Repository(DAO)-DB
- 서비스-도메인, Repository(DAO)
- 컨트롤러-서비스
- 의존 관계 흐름에 순응, Mock부담 낮음
- 컨트롤러-Mock서비스
- 서비스-MockRepository(DAO), 도메인
- Repository(DAO)-DB
- Frontend, Backend 분업 동시 개발 시 적합, Mock부담 높음
- Repository-DB
- 서비스-도메인, Repository
- 컨트롤러-서비스
- 의존 관계 흐름에 순응, Mock부담 낮음
- 컨트롤러-Mock서비스
- 서비스-MockRepository(DAO), 도메인
- Repository(DAO)-DB
- Frontend, Backend 분업 동시 개발 시 적합, Mock부담 높음