2023-10-12 작성

스프링부트 개발환경 구성하기 (5) DB 설계와 REST API 설계

📢 2024년 2월 기준으로 포스팅 내용을 업데이트하였습니다.

포스팅 순서는 아래와 같다.

 

DB 설계

https://aquerytool.com/에서 ERD를 그린 후 모든테이블 생성 SQL을 생성해주는 기능이 있으므로 간단하게 스키마 구성을 할 수 있다.

프로젝트 구조 설계

src/main/java
 com.company.helloBoard
    common
       - code
       - config
       - controller 
       - exception
       - securify
       - util
    domain
       - board
          - controller
          - service
          - mapper
          - model
       - member
          - controller
          - service
          - mapper
          - model

src/main/resources 
   h2
   mapper
      - member
      - board
   static
      - css
      - img
      - js
   templates
      - error
      - layout
      - views
         - member
         - board

REST API 구조 설계

members

HTTP Method url 기능
GET /members 사용자 목록 조회
GET /members/{memberId} 사용자 조회
POST /members 사용자 등록
PUT /members 사용자 수정
DELETE /members 사용자 삭제(회원탈퇴)
POST /members/signup 회원가입
POST /members/login 로그인
POST /members/logout 로그아웃

boards

HTTP Method url 기능
GET /boards 게시글 목록 조회
GET /boards/{boardId} 게시글 조회
POST /boards 게시글 등록
PUT /boards/{boardId} 게시글 수정
DELETE /boards/{boardId} 게시글 삭제

간단하게 DB 설계와 REST API 설계를 진행해봤다. 다음 포스팅에서는 설계를 기반으로 실제 자바 소스로 구현할 것이다.

다음편 가기 >> 스프링부트 개발환경 구성하기 (6) Mybatis 연동과 게시판 목록 조회