프로젝트를 하는 과정에 있어서 기록하는 것이다.
잘못된 부분이나 수정이 필요한 부분은 꾸준히 수정할 예정이다.
✅ ERD 작성
- ERD : Entity Relationship Diagram
- 테이블 간의 관계를 설명해주는 다이어그램
- 프로젝트에서 DB의 구조를 한눈에 파악 가능
✔️프로젝트 ERD 작성
- 엔티티 별로 Master Table 생성 -> Users, Questions, Answers, Comments
- 각 엔티티 안에 들어갈 필드 정리
- 구현에 필요한 Table 생성 -> Questions_Vote, Answers_Vote
- 각 테이블 별로 연관관계 표시
✅ 테이블 명세서 작성
- 테이블과 인덱스를 데이터베이스 공간에 맵핑시키고 저장공간 등의 물리 모델을 기술
- 서비스에서 사용될 테이블을 미리 설계하고 그 내용을 문서화데이터 베이스 명 : 데이터베이스 이름을 작성
- 테이블 명 : 테이블 이름을 작성
- 요구 사항 ID : 테이블이 사용되는 요구사항 정의서의 ID를 작성
- 테이블 설명 : 테이블의 목적 및 역할을 간략하게 작성
- Column 명 : Column을 인식할 수 있는 명칭을 작성
- Column ID : Column ID를 기술
- 타입 및 길이 : Column의 타입과 최대 허용 길이를 작성
- Not Null : 필수 항목 여부를 표시
- PK : Primary Key인지 여부를 표시
- FK : Foreign Key인지 여부를 표시
- IDX : 인덱스를 작성
- 기본값 : 속성의 기본값이 있는 경우에 그 값을 작성
- 제약 조건 : 속성의 특이한 제약조건이 있는 경우 작성
✅ API 명세서 작성
- 기능과 Method, URI를 기본으로 구성을 해 보았다.
- 이 부분도 계속해서 수정해 나아갈 예정이다.
- 회고 및 이 글을 작성 후, PostMan으로 문서를 작성할 수 있다는 것을 알게 됨. >> 해당 내용 찾아볼 것.
🔥 해야할 것
: 끝나면 취소선으로 표시
1️⃣ Implement Users Entity Class
필드 : usersId, email, password, displayName, usersStatusUsersStatus 작성엔티티 클래스 어노테이션 : @Entity, @Getter, @Setter, @NoArgsConstructor필드 어노테이션 : @Id, @GeneratedValue, @Column, @Enumerated어노테이션 요소GeneratedType.IDENTITY : 기본 키 생성을 DB에 위임,
Id가 null일 경우 해당 객체의 Id를 DB의 AUTO_INCREMENT를 가져와 할당length : 최대 길이 지정nullable = false : null 값 비허용unique = true : 유일한 값 설정, 동일한 값이 들어갈 수 없도록 제약 설정EnumType.STRING : enum 값을 텍스트 값 그대로 저장
2️⃣ Implement Exception Handler
동일한 에러 응답을 위한 ErrorResponse 구현@RestControllerAdvice 어노테이션을 이용해 전역에서 발생할 수 있는 예외를 하나의 클래스에서 처리하기 위한 GlobalExceptionAdvice 구현에러 메세지가 일정하게 출력되길 원하면 enum으로 Exception Code 구현 -> BusinessLogicException 구현
'Study in Bootcamp > Pre-Project' 카테고리의 다른 글
[Pre-Project] Day 8 : JWT 이용한 로그인 및 권한 부여 (0) | 2022.10.31 |
---|---|
[Pre-Project] Day 7 : CheckStyle Convention Build (0) | 2022.10.28 |
[Pre-Project] Day 6 : 연관관계 매핑 (0) | 2022.10.28 |
[Pre-Project] Day 5 : Git Flow 꼬임, Check Point 미적용, User (0) | 2022.10.26 |
[Pre-Project] Day 3 : 초기 설정 및 사용자 요구사항 정의서 (0) | 2022.10.24 |
댓글