Java Spring Boot 공부 메모 1

김경민·2023년 8월 21일

Spring Boot의 기본 구조

Client -> Controller, Service, Repository ->DB

Controller

Client(Browser)에서 응답이 왔을 때 어떤 응답을 할지 처리하는 곳입니다.

Service

Java를 통한 내부로직 처리하는 곳입니다.

Repository

DB같은 외부 I/O작업을 처리하는 곳입니다.

DTO(Data Transfer Object)

위에서 언급한 Controller, Service, Repository와 같은 곳의 데이터 교환을 담당하는 곳입니다.
DTO의 경우 로직을 가지고 있지 않습니다.

DAO(Data Access Object)

DB의 데이터에 접근하기 위한 객체입니다.
DAO에서 Repository를 활용하여 데이터 접근 하기도 합니다.

Entity

@Entity로서 사용되며, JPA에서 정의된 필드들을 바탕으로 데이터베이스에서 테이블을 만듭니다.
@Table(name = "테이블명")을 통하여 테이블명을 지정 할 수 있다.

연결된 DB에 저장이 안될 때

저의 경우 MariaDB를 사용하였으며, Dependency와 Properties를 모두 추가하여 이미 DB는 연결되어 있는 상태였습니다.
Talend API를 통하여 테스트 중이었는데, DB에 Create하려고 POST로 body값을 보냈습니다.
Response의 경우 200으로 올바르게 처리 되는 것을 확인하였습니다.
하지만 DB를 확인한 결과 데이터가 올바르게 저장되지 않았습니다.
확인결과 데이터는 올바르게 들어오는 것을 확인하였는데, 입력 받은 데이터를 Jpa를 통하여 저장하지 않은채로 Return 되었던 것입니다.
데이터가 없을지라도 Return은 올바르게 되기 때문에 Reponse가 200으로 떳던 것 같습니다.

공부한 내용을 개인적으로 생각하고 작성하는 글이다 보니 글 내용이 정확하지 않은 부분이 있을 수 있습니다. 잘못된 내용은 피드백 주시면 적극 반영하겠습니다.

profile
개발자로써 한걸음씩 나아가고 있어요

0개의 댓글