클라이언트사이드
1. 삭제 명령을 발생시킬 수 있는 ui
2. 삭제 명령시 필요한 것: 글번호, 비밀번호
3. 데이터를 서버로 넘겨야함
1) 바디 구성해야함 (비밀번호 포함되어있음) = post
서버사이드
4. 검증실패했다면 에러메시지 내보내면서 다시 입력할 수 있도록 내보내야함
5. 검증통과하면 로직돌려야함
1) 인증받은 비번 암호화
2) 삭제처리: reply(cascade), attach(cascade x-메타는 db, 이진은 미들티어, 메타는 롤백으로 트랜잭션 관리가 가능하다면 복원시킬 수 있으니 메타 먼저삭제후 이진데이터 삭제)
3) 메타->게시글->이진데이터 삭제
6. 메타와 게시글 지우는 쿼리문 2개 필요
7. 결과
1) 비밀번호오류난케이스 -> boardView
2) 게시글삭제에 성공한 케이스 -> boardList로 보냄
3) 서버사이드 문제로 게시글 삭제 실패 -> boardView
UPDATE BOARD
SET BO_PARENT = 171
WHERE BO_NO= 173;
SELECT A.BO_NO, DECODE(level, 1, '', LPAD('re:', 6*(LEVEL-1)+3, '1nbsp;'))||BO_TITLE
--,BO_CONTENT,BO_WRITER, BO_DATE, BO_HIT
--,BO_REC, BO_PASS, BO_IP
--,BO_MAIL, BO_PARENT
FROM BOARD A
--WHERE BO_TITLE LIKE '%글%'
START WITH BO_PARENT IS NULL
CONNECT BY PRIOR BO_NO = BO_PARENT -- 부모글의 글번호가 먼저 나와야하니 PRIOR (부모글의 글번호에 자식글이 연결 되어야함)
ORDER SIBLINGS BY BO_NO DESC -- 1단계는 1단계, 2단계는 2단계 siblings끼리 정렬
;
bit8개 byte=자바의 최소한의 데이터단위
octet-stream: 8bit(byte)단위로 보내겠다
다운로드한다면 원본파일명으로 다운(설정안해주면 download.do 현재 uri로 다운됨)
https://meyerweb.com/eric/tools/dencoder/
브라우저종류에따라 파일명인코딩이 다를수도있다는걸..아세요..
클라이언트사이드*
1. 본문글 로드되며 비동기 요청이 발생되어 replyBody부분에 삽입되어야함
2. 페이징처리하는 ui필요함
3. bo_no가 필수파라미터, get방식으로 요청발생
서버사이드
3. 덧글목록조회하여 json으로 데이터 보내야함, 조회쿼리필요
클라이언트사이드
4. 페이징처리하여 append하는 jquery함수필요