Client -> Controller, Service, Repository ->DB
Client(Browser)에서 응답이 왔을 때 어떤 응답을 할지 처리하는 곳입니다.
Java를 통한 내부로직 처리하는 곳입니다.
DB같은 외부 I/O작업을 처리하는 곳입니다.
위에서 언급한 Controller, Service, Repository와 같은 곳의 데이터 교환을 담당하는 곳입니다.
DTO의 경우 로직을 가지고 있지 않습니다.
DB의 데이터에 접근하기 위한 객체입니다.
DAO에서 Repository를 활용하여 데이터 접근 하기도 합니다.
@Entity로서 사용되며, JPA에서 정의된 필드들을 바탕으로 데이터베이스에서 테이블을 만듭니다.
@Table(name = "테이블명")을 통하여 테이블명을 지정 할 수 있다.
저의 경우 MariaDB를 사용하였으며, Dependency와 Properties를 모두 추가하여 이미 DB는 연결되어 있는 상태였습니다.
Talend API를 통하여 테스트 중이었는데, DB에 Create하려고 POST로 body값을 보냈습니다.
Response의 경우 200으로 올바르게 처리 되는 것을 확인하였습니다.
하지만 DB를 확인한 결과 데이터가 올바르게 저장되지 않았습니다.
확인결과 데이터는 올바르게 들어오는 것을 확인하였는데, 입력 받은 데이터를 Jpa를 통하여 저장하지 않은채로 Return 되었던 것입니다.
데이터가 없을지라도 Return은 올바르게 되기 때문에 Reponse가 200으로 떳던 것 같습니다.