본문 바로가기
SpringBoot

Spring Boot 기초 개념

by zkzk7290 2024. 11. 24.
반응형
구조가를 잘 모르겠으면 한번 직접 그려보세요 

 

 

Controller(컨트롤러) : 사용자 화면(View)단 에서 입력이나 어떤 이벤트를 했을 경우 그 이벤트에 맞는 화면(View)이나 비지니스   로직을 실행할 수있도록 업데이트 해준는 역활이다  => Model과 View를 연력해 서버에서 기능별 URL이라는 API 개설해 놓았고  클라이언트(Client)는 필요한 정보 필요한 정보를 얻기 위해 요청한다  => Controller는 이런 창고 역활을 하는API를 모아놓은 클래스.

=> @Controller어노테이션: 컨트롤러 클래스에 라우팅 할 수 있도록  요청 URL에 대해 해당하는 메소드 매핑해줄 수 있도록 하기 위해 @RequestMapping어노테이션을 사용 

라우팅(Routing) :   가장 효율적인 경로를 찾는 프로세스 

 

 Service(서비스) : (실직적인 중요한 작동이 많이 일어나는 부분)  Controller의 요청을 받아 알맞은 정보를 가공 Controller에게 재전달한다.

클라이언트 즉 controller 쪽에서 바로 데이터베이스에 접근하여 정보를 얻고 가공해서 가져가는 것은 위험하다.

정보를 직접 CRUD하고 가공하는 과정에서 테이블에 저장된 원본의 정보가 손상될 우려가 크기 때문이다

(CRUD => Create, Read, Update, Delete)

 

Repository(저장소) : 데이터단에 직접 매칭되는 Entity라는것이 있는 이 Entity를 통해 생성이 되면 받아온 정보를 DB에 저장하고 조회하는 기능을 수행한다 

Entity에 의해 생성되는 DB에 접근하는 메서드를 사용하기 위한 Interface ,<대상엔티티, Entity에 접근할 객체의  타입 >

 

 

DAO(Data Access Object) : DB에 data에 접근하기 위한 객체 

DTO(Data Transfer Object) : 게층간 데이터 교환을 하기위해 사용하는 객체  => 로직을 가지지 않는 순수한 데이터

(Getter & Setter 만 가진 클래스 )

VO : (Value Object)값 오브젝트로서 값을 위해 쓰인다  -read only특징을 가진다 오직 읽기만 

 

Entity 엑셀의 2차 테이블 이라고 생각해주시면 간단합니다

세로 :Column , 가록 Entity

 

@RequestBody : 요청 온 데이터(JSON, XML형식)를 바로 class, model로 매핑하기위한 Annotation

Post, Put,PATCH로 요청을 받을때 요청에서 넘어온 body값들을 자바타입으로 파싱 해줌 

 

@ RequestParam : request의 parameter에서 가져오는것 methoddml 파라미터에 사용 

-HTTP GET 요청에 대해 매칭되는request param 값이 자동으로 들어감 

 

@PathVariable : method parameter 앞에 사용하면서 해당 URL에서 {특정값}을 변수로 받아 올 수 있다.

반응형

'SpringBoot' 카테고리의 다른 글

JPA 필터  (0) 2024.12.14
final  (0) 2024.11.28
Spring boot 기초 개념 동작 원리  (2) 2024.11.23
용어 정리 -1  (0) 2024.10.23
용어 정리  (0) 2024.10.23