프로젝트

프로젝트02

hyeon1016 2024. 12. 4. 01:04

Git Hub 이동

 

프로젝트 설계 과정에서 오류가 발생하여 새로운 DTO인 Subject를 만들었다. 기존의 Question DTO에서 분리하여 관리하는 것이 좋을 것이라 판단했기 때문이다.

 

오전에는 Subject DTO에 대해 의논하고 프로젝트의 방향성을 잡았으나, DB설계 과정에서 난항을 겪었다.

Question 테이블과 Subject 테이블을 PK, FK 관계로 묶었을 때 문제가 발생한다 라고 생각 했고 선생님께 조언을 구했다. 컬럼간의 관계는 꼭 PK FK관계로 참조할 필요가 없다는 사실을 알게 되었고, 우린 맹목적으로 PK FK관계만 생각하였다고 반성했다. 추가적으로 코드를 조합하여 문제의 고유 넘버(시리얼 넘버)를 만드는 방법을 알게 되었다.

 

Subject DTO는 문제의 카테고리를 분류하는 DTO로 과목, 챕터, 과목코드의 형식으로 이루어져 있으며 INSERT 했을 때 과목 코드의 값이 DB에서 AUTO_INCREMENT로 증가하는 것이 아닌 함수를 추가적으로 만들어 추가하려고 하는 과목이 존재하지 않는다면 과목코드를 1로 지정하고, 과목이 존재한다면 과목 코드의 최대값에 +1을 하여 INSERT하는 방식으로 코드를 작성했다.