Controller : URL을 통해 온 요청을 받고 Response.
(@RequestMapping-요청URL분류, @RestController-역할 명시)
Service : Controller를 통해 온 요청을 받고 비즈니스 로직 구현 하고 다시 전달 === 여러 Dao를 호출하여 여러번의 데이터 처리를 하며 읽은 데이터에 대한 비즈니스 로직 수행 or 여러개의 트랜잭션으로 묶음
(@Service-역할 명시, @Transactional-트랜잭션단위, for 구분을 통해 DB와 insert/update/delete 할 시 한개라도 동작에 실패하면 그전에 수행되었던 로직도 원복시키는 단위)
Mapper : Mybatis 영역, java interface와 xml로 구성
java interface (@Mapper-역할 명시)
xml (SQL 쿼리문, namespace 통해 java interface와 연동)
DTO : 각 계층간 데이터 교환을 위한 객체. 오가면서 변경 발생
DAO : DB 테이블과 같으며 DB를 통해 조회환 값을 가져오기 위한 객체. DB를 사용해 데이터를 조회하거나 조작하는 기능을 전담.
VO : Readonly
src/main/java (java 파일)
src/main/resources (java 파일에서 사용하는 리소스 파일)
src/main/webapp