본문 바로가기

Application/JSP Server

[JSP 프로젝트] 주소록 프로그램 (1) - 주소록 프로그램 분석

반응형

1. 주소록 프로그램 기능분석

MVC 패턴 기반 설계구조와 빈즈를 이용한 DB 연동 웹프로그래밍

 

주소록 목록 보기 페이지 구분 없이 최근 등록 내용 순으로 보여준다.
주소록 입력 번호, 이름, 전화번호, 생일, 이메일, 회사, 메모를 등록
주소록 수정 사전에 정의된 관리자 비밀번호로 수정
주소록 삭제 수정 화면에서 삭제

2. 주소록 화면 설계

 

주소록 목록 화면 addrbook_list.jsp
주소록 입력 화면 addrbook_form.jsp
주소록 수정/삭제 화면 addrbook_edit_form.jsp
주소록 실행 메인 [목록화면으로] index.jsp
공용 스타일시트 addrbook.css

(1) 주소록 목록 화면

등록된 주소를 모두 보여주는 메인 화면

메모의 경우 본문을 목록에 모두 출력

작성/수정/삭제를 위한 본문 클릭 링크

 

-> 뷰 역할만 수행하며, 실제 데이터와 연계하려면 컨트롤러가 필요

-> index.jsp를 실행하면 컨트롤러를 경유해 addrbook_list.jsp가 호출

 

(2) 주소록 작성 화면

목록화면에서 주소록 등록 링크로 접속

입력을 위한 HTML 폼 요소, 테이블로 레이아웃 작성

 

-> 생일 작성시 달력 출력 [크롬만 지원]

 

(3) 주소록 수정/삭제 화면

목록화면에서 주소록 번호 링크로 접속

관리자 비밀번호를 입력받아서 본인 확인

비민번호 틀리면 입력하면으로 돌아감

삭제시 확인메시지 출력 후 삭제 [삭제 후 주소록 목록화면으로 돌아감]


3. 주소록 프로그램 설계

주소록 프로그램은 DAO/DO 패턴

 

DAO(Data Access Object) : 모든 DB와의 처리를 담당하는 클래스 구조

DO(Data Object) : 데이터베이스의 데이터를 객체화한 클래스 구조

[DO구조는 테이블 구조와 일치여부 불확실]

-> 사용자 화면과 빈즈를 연결시켜주는 컨트롤러

-> 오류 처리를 위한 JSP 파일 필요

DB 작업 수행하는 DAO 클래스 AddrBean.java
주소록 데이터 객체, 테이블 내 특정 로우와 매핑되는 DO 클래스 AddrBook.java
컨트롤러, 프로그램 흐름과 화면전환과 데이터 중계 담당 addrbook_control.jsp
action code=list,insert,edit,update,delete
오류 처리를 위한 페이지 addrbook_error.jsp

 


4. 주소록 테이블 설계

ad_id INT 주소록 고유 번호 주 키
auto_increment 옵션 사용
ad_name VARCHAR(15) 이름 NOT NULL
ad_email VARCHAR(50) 이메일  
ad_comdept VARCHAR(20) 회사, 부서 NOT NULL
ad_birth VARCHAR(10) 생년월일 NOT NULL
ad_tel VARCHAR(20) 전화번호  
ad_memo VARCHAR(100) 메모  

-> 이름 15자리는 한글과 영문 동시 지원 목적

-> ad_id가 주 키

-> MySQL의 auto_increment 옵션

[필수 입력 및 중복 방지 옵션 / 데이터 삽입시 1부터 1씩 증가]

반응형