웹 요청 흐름

순찌부찌·2024년 12월 29일
  1. Controller

    • 사용자가 보낸 요청을 가장 먼저 받는 곳
    • 주로 어떤 URL 로 어떤 작업을 할지 결정
    • 여기서는 프론트에서 /api 로 들어온 (Get, Post 등) 요청을 받고, 요청 내용을 꺼낸 후 Service에게 일을 시킵니다
  2. Service

    • 실제 비즈니스 로직이나 데이터 처리를 담당
    • Controller가 준 데이터를 어떻게 DB에 저장할지, 어떤 엔티티(객체)를 만들어서 Mapper에 넘길지 결정함
    • 여기서는 프론트에서 넘어온 내용을 Entity에 담아서 Mapper에 넘김
  3. Mapper

    • DB와 직접 대화하는 부분
    • 어떤 쿼리를 실행할지 정의한 Mapper.xml과 연결
    • Service가 넘긴 Entity의 데이터를 바탕으로 DB에 쿼리 작업을 실행
  4. Entity

    • 데이터를 담아두는 그릇
    • 예) content라는 필드에 사용자 입력을 넣어두고, Mapper가 이 값을 SQL에 사용
  5. Mapper.xml

    • MyBatis에서 실제 SQL 쿼리문을 작성하는 곳

프론트에서 POST /map 요청, { content: "..." } 데이터를 보냄.
Controller (MainController)가 요청을 받아, content를 꺼내 Service에 전달.
Service (MapService)에서 MapEntity에 content를 담고, Mapper를 호출.
Mapper (MapMapper + MapMapper.xml)가 준비해 둔 SQL로 DB에 INSERT.
Controller는 “공유완료” 같은 응답을 돌려주고, 프론트는 이 메시지를 받음.

0개의 댓글