멀티 게시판은 말 그대로 게시판이 많다는 의미로,
비슷하게 생기고 비슷한 기능을 가진
공지사항, 일반 게시판, FAQ, 커뮤니티 등을 하나의 게시판으로 구현하는 것이다.
또는 토론 주제별로 게시판을 만들어 사용할 수도 있다.
멀티 게시판이 적용된 게시판은
화면은 리스트, 글읽기, 글쓰기/수정 등의 화면이 공통으로 사용되고,
기능도 유사하기 때문에 쉽게 구현할 수 있다.
게시물을 구별할 수 있는 구별자만 있으면 된다.
즉, 게시물을 구별할 수 있는 필드를 추가해주고
다음 그림과 같이 이 필드의 값을 항상 가지고 다니면 된다.
이러한 구분 필드를 여기에서는 게시판 그룹 번호(bgno)라고 명명했다.
- 글 리스트는 그룹 번호(bgno)에 해당하는 내용들만 조회해서 출력하고,
읽기/쓰기로 넘어갈 때 그룹 번호(bgno)를 넘겨 준다.
- 글 읽기는 게시물 번호(brdno)에 해당하는 글을 조회해서 출력하고,
그룹 번호는 전달(게시물 삭제/수정)을 위해서 가지고 있는다.
- 글 쓰기/수정은 그룹 번호 필드를 추가해서 저장하고, 그룹 번호를 가지고 글 리스트로 돌아간다.
- 글 삭제는 게시물 번호에 해당하는 글을 지우고, 그룹 번호를 가지고 글 리스트로 돌아간다.
이상의 내용을 통해 다시 강조하면
링크를 통해 움직일 때
항상 그룹 번호(bgno)를 넘겨주거나 넘겨주기 위해 가지고 있어야 한다.
따라서, 그룹 번호만 신경 쓰면 되기 때문에 매우 간단하게 개발할 수 있다.
프로그램을 작성하기 전에 다음 SQL문을 이용하여
그룹 번호(bgno)를 테이블(tbl_board)에 추가한 뒤 1로 채워준다.
기존 게시판 데이터는 모두 1로 저장하겠다는 의미이다.
ALTER TABLE TBL_BOARD ADD BGNO INTEGER;
UPDATE TBL_BOARD SET BGNO = 1;
BoardVO클래스에도 다음과 같이 그룹 번호(bgno) 변수를 추가한다.
public class BoardVO {
private String bgno;
private String brdno;
private String brdtitle;
~~ 생략 ~~
public String getBgno() {
return bgno;
}
public void setBgno(String bgno) {
this.bgno = bgno;
}
~~ 생략 ~~
BoardVO.java
'Java > 게시판 8: 멀티게시판' 카테고리의 다른 글
2. 글 리스트 (0) | 2016.06.04 |
---|---|
3. 글 읽기 / 삭제 (0) | 2016.06.04 |
4. 글 쓰기/수정 (0) | 2016.06.04 |