http://www.kkaok.pe.kr/index.jsp 발취
환경
window2000+tomcat+apache+jdk1.3.1+oracle8.1.6
테스트 페이지
http://211.192.187.175/bbs/bbs_list.jsp
임시여서 컴퓨터 끄면 못보실수도 있습니다.
먼저 게시판 하나를 생성합니다.
bbs_1
그리고 게시판을 관리하는 게시판을 생성합니다.
tableMNG
creat ....
tbname 하나의 게시판으로 인식하기 위한 칼럼 bbs 삽입
subtbname 각각의 단위 게시판이 들어가는 칼럼 bbs_1,bbs_2,bbs_3,.....,bbs_200
tbstep 게시판을 붙이는 순서 1,2,3....200
tbcount 각 게시판의 카운터(전체를 카운팅할 순 없으니깐요)
새글쓰기 처리
보통 하시던거에다가 추가하시면 됩니다.
이글이 1보다 크고 50000보다 작다면 update를 시켜줍니다.
update tableMNG set tbstep = tbstep+1 where subtbname='bbs_1'
이런식으로...
이글이 50000보다 크다면 새테이블을 생성하구 INSERT 시킵니다.
그리고 테이블 이름을 바꿔 줍니다. bbs_2
그리고 기존 데이터 삽입...
답변글 처리
여기에는 무조건 update입니다.
중간에 글이 들어간다거나 해서 증가해도 무방하겠죠
답변글이 많아서 기존의 50000에다가 한 100이 더들어가면 그런가보다하십시요
그런건 상관이 없습니다.
삭제처리
update tableMNG set tbstep = tbstep-1 where subtbname='bbs_1'
그리고 각각의 테이블을 코딩에서 붙여 쓰십시요
리스트 페이지
현 페이지를 기준으로 곱하고 나누고 더하면 필요한 카운팅이 나오겠죠
그럼 그걸 기준으로 tbstep을 결정합니다.
그리고 붙이시면 tbname+``_``+tbstep 하면 테이블 이름이 나오겠죠
전체 카운팅과 페이지는 tableMNG의 카운팅을 다 더하시면 나옵니다.
search
5만건 단위로 단계별 검색하도록 했습니다.
여기서 잠깐
전 새글쓰기,답변글, 삭제 등에서 tbstep=tbstep+1로 하지 않았습니다.
만약 글삽입시 에러가 발생하면 카운터만 늘어나고 맙니다.
그래서 두가지 처리를 했습니다.
먼저 해당게시물의 카운터를 구해 update시켰습니다.
그리고 데이터입력에 에러가 나면 -1 해줬습니다.
이 카운터와 게시물 수가 일치하지 않으면 문제가 발생하므로...
처음 게시판에 접속할때 필요한건 tbname, 현재페이지 입니다.
이걸가지고 조합하면 어느 테이블인지 결정할 수도 있구
모든지 처리가 가능합니다.
이런 방식으로 하면 아무 문제 없겠죠 ^^
환경
window2000+tomcat+apache+jdk1.3.1+oracle8.1.6
테스트 페이지
http://211.192.187.175/bbs/bbs_list.jsp
임시여서 컴퓨터 끄면 못보실수도 있습니다.
먼저 게시판 하나를 생성합니다.
bbs_1
그리고 게시판을 관리하는 게시판을 생성합니다.
tableMNG
creat ....
tbname 하나의 게시판으로 인식하기 위한 칼럼 bbs 삽입
subtbname 각각의 단위 게시판이 들어가는 칼럼 bbs_1,bbs_2,bbs_3,.....,bbs_200
tbstep 게시판을 붙이는 순서 1,2,3....200
tbcount 각 게시판의 카운터(전체를 카운팅할 순 없으니깐요)
새글쓰기 처리
보통 하시던거에다가 추가하시면 됩니다.
이글이 1보다 크고 50000보다 작다면 update를 시켜줍니다.
update tableMNG set tbstep = tbstep+1 where subtbname='bbs_1'
이런식으로...
이글이 50000보다 크다면 새테이블을 생성하구 INSERT 시킵니다.
그리고 테이블 이름을 바꿔 줍니다. bbs_2
그리고 기존 데이터 삽입...
답변글 처리
여기에는 무조건 update입니다.
중간에 글이 들어간다거나 해서 증가해도 무방하겠죠
답변글이 많아서 기존의 50000에다가 한 100이 더들어가면 그런가보다하십시요
그런건 상관이 없습니다.
삭제처리
update tableMNG set tbstep = tbstep-1 where subtbname='bbs_1'
그리고 각각의 테이블을 코딩에서 붙여 쓰십시요
리스트 페이지
현 페이지를 기준으로 곱하고 나누고 더하면 필요한 카운팅이 나오겠죠
그럼 그걸 기준으로 tbstep을 결정합니다.
그리고 붙이시면 tbname+``_``+tbstep 하면 테이블 이름이 나오겠죠
전체 카운팅과 페이지는 tableMNG의 카운팅을 다 더하시면 나옵니다.
search
5만건 단위로 단계별 검색하도록 했습니다.
여기서 잠깐
전 새글쓰기,답변글, 삭제 등에서 tbstep=tbstep+1로 하지 않았습니다.
만약 글삽입시 에러가 발생하면 카운터만 늘어나고 맙니다.
그래서 두가지 처리를 했습니다.
먼저 해당게시물의 카운터를 구해 update시켰습니다.
그리고 데이터입력에 에러가 나면 -1 해줬습니다.
이 카운터와 게시물 수가 일치하지 않으면 문제가 발생하므로...
처음 게시판에 접속할때 필요한건 tbname, 현재페이지 입니다.
이걸가지고 조합하면 어느 테이블인지 결정할 수도 있구
모든지 처리가 가능합니다.
이런 방식으로 하면 아무 문제 없겠죠 ^^
'asp' 카테고리의 다른 글
대용량 게시판 만들기 강좌 #4/4 (WRITE, REPLY) (0) | 2007.05.02 |
---|---|
답변형 게시판 로직 (0) | 2007.05.02 |
계층형 게시판 로직 (0) | 2007.05.02 |
ServerVariables 개체 (0) | 2007.05.02 |
NIC에서 인터넷 도메인 정보 얻어오기 (0) | 2007.05.02 |