본문 바로가기

Java/[패스트캠퍼스] 50일 포트폴리오 챌린지

[19일차] 10개 프로젝트로 완성하는 백엔드 웹개발(Java/Spring)

수강 강의명
수강 강의명

게시판 서비스를 만들기 위한 기본 도메인을 설계한다.
- 도메인 ERD 다이어그램 작성
- 자바 클래스로 도메인 표현

 

도메인 ERD 다이어그램 작성

https://app.diagrams.net/

 

Flowchart Maker & Online Diagram Software

Flowchart Maker and Online Diagram Software draw.io is free online diagram software. You can use it as a flowchart maker, network diagram software, to create UML online, as an ER diagram tool, to design database schema, to build BPMN online, as a circuit d

app.diagrams.net

① Entity Relationship Diagram를 선택하여 새 다이어그램을 생성한다. svg 파일 형태로 저장한다.
② Table1(Entity Relation)를 통해 테이블을 작성한다.
③ Article(게시글) : 게시글을 구현하기 위해 필요한 내용을 작성한다.
    id(아이디, PK), title(제목), content(본문), hashtag(해시태그)
    메타 데이터 : createdAt(생성일시), createdBy(생성자), modifiedAt(수정일시), modifiedBy(수정자)
    메타 데이터 : 모든 도메인에 공통으로 들어가는 데이터(관리 목적).
④ ArticleComment(댓글) : 댓글을 구현하기 위해 필요한 내용을 작성한다.
     article_id(게시글 id), content(본문)
     article_id(게시글 id) : 어느 게시글에 속한 댓글인지 알기 위함.
⑤ Article(게시글), ArticleComment(댓글) : 연관 관계(Relation)를 설정한다.
     1 Optional to Many Optional

    게시글은 있을 수도 있고, 없을 수도 있다. / 게시글에는 댓글이 있을 수도 있고, 없을 수도 있다.
    게시글 하나당 댓글이 없거나 많다.
⑥ NOT NULL 필드를 설정한다.
     Article(게시글) : title(제목), content(본문), 메타 데이터는 NOT NULL로 관리한다.
⑦ Article(게시글)과 ArticleComment(댓글)의 데이터 유형을 작성한다.
   데이터 크기를 최소한으로 설정하면 추후 변동이 생길 때 테이블 전체를 업데이트 해야 하는 문제가 발생한다.
   데이터가 많으면 많을수록 업데이트 하는 데 드는 비용도 커지게 된다.

 

자바 클래스로 도메인 표현

① domain 패키지를 생성한다.
② Article(게시글) 객체를 생성한다.
     id, title, content, hashtag, createdAt, createdBy, modifiedAt, modifiedBy
③ ArticleComment(댓글) 객체를 생성한다.
     id, Article(객체), content, createdAt, createdBy, modifiedAt, modifiedBy

수강 화면수강 화면
수강 화면

 
본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성하였습니다.
https://bit.ly/43z0P6S

 

패스트캠퍼스 [직장인 실무교육]

프로그래밍, 영상편집, UX/UI, 마케팅, 데이터 분석, 엑셀강의, The RED, 국비지원, 기업교육, 서비스 제공.

fastcampus.co.kr


#패스트캠퍼스 #포트폴리오 #직장인자기계발 #환급챌린지 #포트폴리오챌린지 #패스트캠퍼스후기 #초격차패키지 #오공완