A Story

Book-ing

관리자

view : 320

기간 : 2014-02-24 ~ 2014-03-19 ( 월,화,수,목,금 )


URL : 내부서버용


MVC패턴, Ajax, jQuery의 이해를 바탕으로 그 기술들을 적용한 도서쇼핑몰

 

 

 

Project : Book-ing

개발환경

OS

Window 7

DBMS

Oracle 11g XE

WAS

Apache Tomcat 7.0

Language

Java( Ajax, jQuery, javascript), HTML5/CSS

개발툴

Database

SQL Tools for Oracle, EXERD

Design

Photoshop CS6

Editer

ECLIPSE KEPLER

개발기간

개발인원

2014. 02. 24 ~ 2014. 03. 19

6명

개요

1. 프로젝트의 목적

Java Open Framework 전문가 과정에서 배웠던 기술들을 적용시키고 숙련할 수 있는 Web을 개발분야로 선정

많은 데이터를 처리 할 수 있는 온라인 서적 쇼핑몰을 선정하여 DATABASE에 대한 이해를 높이고자 함

MVC패턴, Ajax, jQuery의 이해를 바탕으로 그 기술들을 적용하고자 함

2. Book-ing 의미

책을 읽자는 의미로 책(Book)에 접미사(ing)를 붙여 Reading을 다르게 표현한 단어

3. Book-ing 소개

사용자 : 도서검색(단어)·자동완성(단어, 자음) 및 도서상세정보 제공, 장바구니·주문내역확인 기능제공,

사용자 질문사항을 접수·답변 해 줄 수 있는 고객센터 제공

관리자 : 가입한 회원들을 관리할 수 있는 회원관리 제공, 도서등록·수정·삭제 할 수 있는 도서관리 제공,

베스트, 추천, 신규도서를 설정하고 설정 된 도서들을 노출 시킬 수 있는 화면관리 제공

4. 벤치마킹

위메프, 하프클럽, 교보문고, Yes24

 

 

세부기능 요약 및 설명

상세화면

기능설명

비밀번호 찾기 :

사용자는 아이디와 이메일 주소를 입력하면 자신의

현재 비밀번호를 이메일로

찾을 수 있다.

▶사용자가 입력한 아이디와 이메일을 MEMBER테이블에서

조회하여 유효성검사를 하고 일치하는 레코드의 비밀번호를

네이버 stmp서버를 이용하여 사용자메일로 전송한다.

초성 도서검색 및 자동완성 :

사용자는 초성 입력 시 자동완성 되어 진 도서들을 볼 수 있고

검색 시 해당되는 도서를 검색할 수 있다.

▶도서검색란에 입력된 글자가 초성인지를 판별하고 초성이라면

한 글자씩 나누어 ‘가~하’중 맞는 글자를 매칭시켜 검색한다.

▶예를들어 ‘ㄱ’이 입력되었다면 첫 글자가 가~나 사이의 데이터를

검색하고 SEARCHBOOK테이블의 BOOKNAME 컬럼에 검색 된

데이터들을 저장, 첫 글자를 뺀 데이터들을 SPLITNAME

컬럼에 저장한다.

▶두 글자 이상의 초성이 입력되었을 경우 데이터를

BOOK테이블의 BOOKNAME 컬럼에서 조회하지 않고

SEARCHBOOK테이블의 SPLITNAME 컬럼에서 조회한다.

도서상세정보 :

1)사용자는 선택한 도서의 이미지, 제목, 지은이, 가격, 목차, 줄거리 등 상세정보를 볼 수 있다.

▶BOOK 테이블에서 사용자가 선택한 도서의 BOOKNUM으로

레코드를 조회한다.

2) 사용자는 수량 설정 후 장바구니 담기 또는 바로구매를 할 수 있다.

▶CART 테이블에 사용자의 ID, BOOKNUM, QUANTITY를 저장,

PK인 장바구니번호 CARTNUM은 시퀀스로 생성한다.

장바구니 :

1)사용자는 장바구니에 담았던 도서 목록들을 볼 수 있다.

▶CART테이블에서 사용자의 ID로 레코드들을 조회한다.

2)사용자는 장바구니에 담았던 도서들의 수량수정 하거나 삭제할 수 있다.

▶사용자가 선택한 CARTNUM에 해당하는 레코드의 수량을

변경 하거나 삭제한다.

3)사용자는 주문하기와 계속 쇼핑하기를 할 수 있다.

▶주문결제 페이지로 선택한 CARTNUM 값을 전달한다.

주문결제 :

1)구매정보

사용자는 구매할 도서의 정보와 지불해야 할 결제 금액을 볼 수 있다.

▶장바구니 페이지에서 전달받은 CARTNUM으로 사용자가

구매 할 정보들을 보여준다.

2)배송정보

사용자는 수취인의 배송정보를 입력 할 수 있다.

▶등록된 배송지 : MEMBER테이블에서 사용자의 ID로 레코드를조회하여 이름, 주소, 휴대폰번호를 선택하여 보여준다.

3)결제

사용자는 무통장 입금할 은행을 선택하고 입금자명을 기입 후 결제를 진행할 수 있다.

▶입력된 정보들과 CARTNUM값을 결제완료페이지로 전달

결제완료 :

사용자는 무통장 입금정보, 배송지 정보, 주문상품내역, 결제정보를 볼 수 있다.

▶전달받은 모든 정보들을 BOOKORDER테이블에 저장한다.

구매하는 도서에 각각 주문번호 ORDERNUM을 시퀀스로

생성한다.,

여러 개를 한 번에 주문했음을 알려주는 배송번호 DELIVERYNUM은시퀀스로 생성한다. → 두 개 이상 주문 시 같은 DELIVERYNUM을

갖는다.

QNA :

사용자는 질문사항을 게시판에 쓰고 관리자로부터 답변을 받을 수 있다.

▶QNA테이블 레코드들을 ROWNUM과 서브쿼리로 페이징하여

처리된 레코드들을 QNANUM으로 정렬하여 5개씩 사용자에게

보여준다.

▶게시된 글을 읽었을 때 세션에 저장된 아이디로 자신이 작성한

글인지 판별하여 자신이 작성할 글일 때 수정 및 삭제가

가능하다.

FAQ :

1)사용자는 자주 묻는 질문과 답변을 볼 수 있다.

▶자주 묻는 질문을 클릭 했을 때 jQuery DOM구조를 이용하여

페이지 이동 없이 답변을 보여준다.

2)사용자는 검색란을 통해 원하는 정보를 빠르게 찾을 수 있다.

먼저 비밀번호를 입력하여 주세요.

창닫기확인

TOP