턱없이 부족한 실력이지만 구현해보았습니다. intermedia text 를 사용하지 않고 4000byte 가 넘는 텍스트를 like 검색 (경계에 걸리는 단어는 검색불가능합니다만 그외의 단어는 검색가능합니다. SQL을 잘 안다면 잘라진 텍스트를 붙여서 검색하는 쿼리도 생각해 볼 수 있겠죠. ^^; 불가능 할 수도 있을 거구요.) 가능하도록 쪼개서 넣는 로직으로 구현했습니다. 한글이 맨 마지막에 들어갈 경우 4001 바이트가 되므로 한 덩어리 크기는 3999 bytes로 잘랐습니다. 소스를 보시고 더 좋은 의견이 있으신 분은 답글 달아주시면 감사하겠습니다. index는 달지 않았습니다. 습작이기 때문이기도 하고, 제가 db를 잘 모르는 이유도 있습니다. board_insert2.jsp 파일에 텍스트를 자르는 루틴이 들어있습니다. db schema는 답변형 게시판으로 잡았지만 아직 구현되지는 않았습니다. readme.txt 파일에 설치및 기능 설명을 해 놓았습니다. 읽어주셔서 감사합니다. 좋은 하루 되십시오. /* okboard 0.61 작성자 : kenu@okjsp.pe.kr 배포처 : http://www.okjsp.pe.kr 작성일 : 2001-05-23 6:33오전 테스트 : http://210.219.132.222/okboard/board.jsp (no guarantee) */ Oracle8i, jspSmartUpload 를 이용한 자료게시판입니다. 개발환경 apache 1.3.19, tomcat 3.2.1, Resin 1.2.5, Oracle 8.1.5, 8.1.6, 8.1.7 설치법 root(예: c:/jsphome) c:/jsphome/index.html c:/jsphome/okboard/board_create.jsp <-- 게시판 생성 한번실행 후 파일명 바꾸시거나 삭제하세요. c:/jsphome/okboard/board_delete.jsp <-- 게시판 drop 시킵니다 파일명 바꾸시거나 삭제하세요. c:/jsphome/okboard/board.jsp <-- 게시물리스트 c:/jsphome/okboard/board_insert.jsp <-- 자료 입력폼 c:/jsphome/okboard/board_insert2.jsp <-- 자료 입력처리 c:/jsphome/okboard/board_reply.jsp <-- 답변 입력폼 c:/jsphome/okboard/board_reply2.jsp <-- 답변 입력처리 c:/jsphome/okboard/passchk.jsp <-- 수정권한 암호 입력 c:/jsphome/okboard/board_modify.jsp <-- 수정폼 c:/jsphome/okboard/board_modify2.jsp <-- 수정처리 c:/jsphome/okboard/db.jsp <-- jdbc 정보파일 c:/jsphome/okboard/go.jsp <-- back 방지용 중계처리 c:/jsphome/okboard/delete.jsp <-- 삭제권한 암호 입력 c:/jsphome/okboard/delete2.jsp <-- 삭제처리 c:/jsphome/okboard/path.jsp <-- jvm의 classpath 확인 c:/jsphome/okboard/download.jsp <-- 다운로드 처리 c:/jsphome/okboard/okboard.css <-- 페이지 CSS c:/jsphome/okboard/okboard.js <-- javascript c:/jsphome/okboard/images/ <-- 그림파일 디렉토리 c:/jsphome/WEB-INF/classes/com/ <-- JspSmartUpload 컴포넌트 디렉토리 c:/jsphome/upload/ <-- 파일이 업로드되는 디렉토리 ※ D:oracleora81jdbclibclasses12.zip 이 jvm 의 classpath 에 인식이 되어야 합니다. 그렇지 않을 경우 java.lang.ClassNotFoundException: oracle.jdbc.driver.OracleDriver 메세지가 뜹니다. Oracle 8.0 이하는 쿼리가 제대로 동작하지 않을 수 있습니다. 실행법 설치 완료 후 tomcat을 구동시킨 후 브라우저에서 http://localhost/okboard/board_create.jsp 를 요청합니다. kboard 라는 table 이 만들어 지면 됩니다. board_create.jsp 파일 이름을 바꿔주세요. board_delete.jsp 파일 이름을 바꿔주세요. 테이블리셋 시에 바꾼이름을 브라우저에서 요청하면 됩니다. 보안 oracle의 데이터베이스의 기본 접근권한으로 되어있습니다. (scott, tiger) 변경을 원하시면 db.jsp 파일만 수정하시면 됩니다. table 구성 (kboard, kboard_cnts) CREATE TABLE KBOARD ( BBSID VARCHAR2 (10) NOT NULL, REF NUMBER NOT NULL, STEP NUMBER DEFAULT 0 NOT NULL, LEV NUMBER DEFAULT 0 NOT NULL, WRITER VARCHAR2 (50) NOT NULL, SUBJECT VARCHAR2 (500) NOT NULL, PASSWORD VARCHAR2 (8), EMAIL VARCHAR2 (50), READ NUMBER DEFAULT 0 NOT NULL, FILENAME VARCHAR2 (200), MASKNAME VARCHAR2 (20), FILESIZE NUMBER DEFAULT 0, DOWNLOAD NUMBER DEFAULT 0, WHEN DATE, IP VARCHAR2 (24)) ; CREATE TABLE KBOARD_CNTS ( BBSID VARCHAR2 (10) NOT NULL, REF NUMBER NOT NULL, STEP NUMBER NOT NULL, LEV NUMBER NOT NULL, CONTENT VARCHAR2 (4000), CID NUMBER DEFAULT 0 NOT NULL) ; 0.61 - 2001-05-23 6:33오전 리스트 버그 수정 0.6 - 2001-05-21 1:58오전 게시판 제목, 이름, 내용 검색 추가 select 항목 지정하는 javascript 추가 0.5 - 2001-05-20 1:11오전 수정기능 추가 Cookie로 입력신상 저장 0.4 - 2001-05-18 10:56오전 답변기능 추가 Fn.java 버그 수정 0.3 - 2001-05-17 5:57오후 오라클의 4000바이트 제한을 풀었습니다. 다운로드 방식을 바꾸었습니다. 한글제목파일, 이미지 다운로드시 이상없습니다. 게시물 작성 후 refresh 되도록 했습니다. email 링크로 변경했습니다. doc, xls, ppt, gif, img 모두 다운로드 창 뜹니다. jsp 코드 올려도 실행되지 않습니다. 전신 kboard 를 오라클용으로 전환합니다.
Tags: oracle sql
|