게시판 구현

0

jsp

목록 보기
26/39
  1. ★ 요구사항 분석
  2. 사용자 분류
    각 관리자 마다 쓸 수 있는 기능 나뉨 - 유즈케이스 다이어그램
  3. 각 케이스에서 완성해야하는 프로세스 도식화 - 시퀀스 다이어그램

다이어그램뽑는 것 - 어플리케이션 설계
db - 데이터 설계

일반적인 개발자는 마지막에 다 설계된거 가지고 개발하는 역할.


게시판 구현

요구사항 분석

: 게시글 쓰기, 수정, 삭제, 조회(목록조회, 상세조회)
파일 업다운 로드 포함, 댓글 구조 포함, 덧글 구조 포함, 추천수
파일(업로드, 다운로드, 삭제) - 2개 이상 업로드 가능
덧글(쓰기, 수정, 삭제, 목록조회(상세조회 없으니까)) - 2개 이상

댓글(쓰기, 수정, 삭제, 조회) - 게시글 안에 포함되는 구조.. crud똑같으니까

  • 데이터 설계 - 명사 뽑기
    게시글, 파일, 댓글, 덧글

-- 게시글(BOARD)
글번호 BO_NO NUMBER(6) PK
내용 BO_CONTENT CLOB(VARVHAR2는 길이제한있어서)
제목 BO_TITLE VARCHAR2(50 CHAR) NN
작성자 BO_WRITER VARCHAR2(20 CHAR) NN
날짜 BO_DATE DATE NN SYSDATE(기본값)
조회수 BO_HIT NUMBER(4) NN 0
추천수 BO_REC NUMBER(4) NN 0
비밀번호(오픈형이라) BO_PASS VARCHAR2(200) 암호화할것임 NN
아이피(차단하기 위해) BO_IP VARCHAR2(50) NN
이메일(차단사유) BO_MAIL VARCHAR2(20)
상위글번호(원본 게시글인지 댓글게시글인지) - 하이어라키구조..? 자기 참조할 수 있는 테이블
BO_PARENT NUMBER(6) --BO_NUMBER를 참조함
관계 - 널허용 하느냐 안하느냐(완다토리, )

-- 첨부파일(N, ATTCH) 퍼포먼스 고려(레이턴시 타임) - 미들티어가 제일 좋음, 사이즈 엄청 크면 db에 넣을 수 없음
파일번호 ATT_NO NUMBER(6) PK
저장명 ATT_SAVENAME VARCHAR2(70 CHAR) NN
원본파일명 ATT_FILENAME VARCHAR2(50 CHAR) NN
mime(확장자) ATT_MIME VARCHAR2(30 CHAR)
글번호 BO_NO NUMBER(6) NN FK
완다토리,
파일크기 ATT_FILESIZE NUMBER(10) NN
팬시크기(바이트로 보여주는것) ATT_FANCY VARCHAR2(20) NN
다운로드수 ATT_DOWNCOUNT NUMBER(4) NN 0

-- 덧글(N, REPRY)(게시글이랑 같은 개념)
덧글번호 REP_NO NUMBER(6) PK
작성자 REP_WRITER VARCHAR2(20) NN
날짜 REP_DATE DATE NN SYSDATE
비밀번호 REP_PASS VARCHAR2(200) NN
내용 PRE_CONTENT VARCHAR2(100)
글번호 BO_NO NUMBER(6) NN FK CASCADE
-원글 삭제됬을때 지울지 결정(날리려면 NN)
아이피(한 아이피는 덧글 하나만 달 수 있음) REP_IP VARCHAR2(50) NN

파일은 이진데이터도 가지고 있어서 바로 CASCADE로 삭제 못함

단위업무

단위업무에 따라 command uri 결정됨

--게시글
쓰기 : /board/boardInsert.do
수정 : /board/boardUpdate.do
삭제 : /board/boardDelete.do
목록조회 : /board/boardList.do
상세조회 : /board/boardView.do
추천 : /board/recommend.do

--첨부파일
다운로드 : /board/download.do

-- 덧글
쓰기 : /reply/replyInsert.do
수정 : /reply/replyUpdate.do
삭제 : /reply/replyDelete.do
조회 : /reply/replyList.do

0개의 댓글