게시판 제작에 들어가기에 앞서..

 

공지사항과 마찬가지로 빈즈 + 태그라이브러리 + JSP 기반으로 만들도록 하겠습니다.

빈즈와 태그라이브러리는 기존 공지사항에 적용되었던 컴포넌트를 재활용하는 방향으로 잡았습니다.

 

강좌가 올라가기전에 완성된 데모프로그램을 확인하실 수 있도록 웹페이지에 링크를 걸어 두었습니다. 테스트 해보시면서 어떻게 구현되었는지 확인하실 수 있습니다.

 

=> 데모 프로그램

 

1. 작업디렉토리환경

/board (root)

cmd.jsp (글추가/수정/삭제의 기능)

list.jsp (목록보기)

PageList.jsp (페이징 구현을 위한 외부파일)

style.jsp (스타일 파일)

view.jsp (글내용 보기)

write.jsp (글쓰기 폼 – 인증처리포함)

/board/img

각종 이미지

/board/sql

DB 테이블 생성 스크립트

/board /WEB-INF

Web.xml

/board /WEB-INF/tlds

Taglib_1_0.tld(태그라이브러리 설명자 파일)

/board /WEB-INF/classes

클래스 소스 파일

/board /WEB-INF/classes/bean

 

/board /WEB-INF/classes/board

Board.class (글목록 가져오기위해 사용되는 클래스)

BoardRec.class(데이터 정의 클래스-모델)

Dbenv.class(DB 연결을 위한 인터페이스 클래스)

repString.class(문자열 치환을 위한 유틸리티 클래스)

Write.class(데이터 입력/삭제/수정을 담당할 클래스)

/board /WEB-INF/classes/tag

IterateTag.class (순환태그)

IterateTEI.class (순환태그 도우미 클래스)

LoopTag.class (반복태그)

repStringTag.class (문자열치환 태그)

 

 

 

2. DB 컨넥션 환경 변수 설정하기

지난번 공지사항 만들기의 강좌에 적용되었던 방법과는 좀 다르게 인퍼페이스를 적용하여 만들어 보았습니다.

인터페이스는 각종상수들을 정의해서 쓸 수 있을 뿐만 아니라 자바언어에서 다중 상속을 가능하게 해주는 방법입니다.

인퍼페이스에 대한 자세한 내용은 Tip&Tech에 올려두도록 하겠습니다.

DBenv.java

package board;

public interface DBenv

{

  final static String JDBC_DRIVER_NAME = "org.gjt.mm.mysql.Driver";

  final static String DATABASE_URL = "jdbc:mysql://xxx.xxx.x.xx:3306/testdb";

  final static String DATABASE_USER = "userid";

  final static String DATABASE_PASSWORD = "password";

}

위와 같이 DB 연결을 위해 필요한 변수들을 정의 해 두고 필요한 부분에서는 구현(implements) 하여 쉽게 쓸 수 있습니다.