목록 페이지 구성을 먼저 해보자. 한번에 다 완성되는 것이 아니라 중간에 개선해 갈 수 있다. 개발에 앞서 테이블 설계된 것을 MySQL 데이터베이스에 테이블이 생성되어 있어야 한다.
디렉토리 및 파일 생성
게시판 디렉토리와 목록 페이지, 수정 폼, 등록 폼, 보기, 처리 파일을 만들었다.
파 일 | 설 명 |
/board/boardList.jsp | 게시판 목록 페이지 |
/board/boardModifyForm.jsp | 게시판 수정 폼 페이지 |
/board/boardProcess.jsp | 게시판 처리 (등록, 수정, 삭제) |
/board/boardView.jsp | 게시판 상세 조회 페이지 |
/board/boardWriteForm.jsp | 게시판 등록 폼 페이지 |
모든 파일의 기본적인 템플릿
파일의 상단에 선언되는 DTD, 캐릭터셋, HTML 선언부분 공통적인 내용이다. (예시도 목록페이지)
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"></meta> <title>게시판 목록</title> </head> <body>게시판 목록</body> </html>
|
데이터베이스 테이블 생성
MySQL Client 콘솔창으로 스키마를 이용해서 생성할 수도 있다. 하지만 요즘은 다양한 데이터베이스 접속 툴을 이용해서 사용 한다. 접속 툴로는 SQLGate, Toad, SQLYog, Navi, Orange 등 다양하게 많다. 국산용 프로그램이고 개인용은 프리웨어인 SQLGate를 이용해서 생성해보겠다. 이 프로그램은 깔끔한 UI로 손쉽게 익힐 수 있어 많이 사용하고 있다.
회원가입 후 로그인 해야 다운받을 수 있다. (약관동의)
특이사항 없이 다음 ~ 다음 ~ 을 통해 설치 한다.
실행해보면 10초를 센 후 사용할 수 있다. 예전엔 안그랬는 데 다 돈 벌기 위한 목적이니 이해해주자.
MySQL설치시 입력했던 암호를 작성하고 접속 해보자.
좌측 메뉴 패널에서 맨 상위 마우스 우측 클릭 후 새 데이터베이스를 생성하자.
데이터베이스 명과 캐릭터셋을 설정후 생성!
콘솔창에선 아래와 같이! CREATE DATABASE `stone` CHARACTER SET 'utf8' COLLATE 'utf8_general_ci'
|
생성했으면 위에서 접속할 때 mysql 데이터베이스를 "stone"으로 선택해서 접속할 수 있다. 자 이제 테이블을 생성해보자.
데이터베이스 물리모델링 한 모습을 참고하여 테이블을 생성하도록 하자. (참고)
콘솔창에선 아래와 같이! CREATE TABLE `board` ( `NUM` int(11) NOT NULL AUTO_INCREMENT COMMENT '번호', `SUBJECT` varchar(250) NOT NULL COMMENT '제목', `WRITER` varchar(50) NOT NULL COMMENT '작성자', `CONTENTS` text COMMENT '내용', `HIT` int(11) DEFAULT NULL COMMENT '조회수', `IP` varchar(30) NOT NULL COMMENT '아이피', `REG_DATE` datetime NOT NULL COMMENT '등록 일시', `MOD_DATE` datetime DEFAULT NULL COMMENT '수정 일시', PRIMARY KEY (`NUM`), UNIQUE KEY `NUM` (`NUM`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='게시판';
|
생성된 테이블 모습
이렇게 준비는 마무리되었다. 이제 구현 즉, 개발단계로 넘어간다.