14장. 커넥션풀을 사용한 간단한 쇼핑몰 구축하기 이 장에서 배울 내용 : 앞에서 배운 부분을 종합적으로 학습하기 위해, 쇼핑몰을 작성하는 방법을 학습한다. 쇼핑몰에는 앞에서 배우 것에 추가적으로 파일 업로드의 사용, 트랜잭션이 있어 이들에 대해서도 살펴본다. 김은옥(oda94@naver.com)

Slides:



Advertisements
Similar presentations
일정 관리 다이어리 제작 JSP Programming with a Workbook. 학습 목표  사용자의 일정을 관리할 수 있는 다이어리에 대하여 알아보자. JSP Programming with a Workbook2.
Advertisements

2008 년 11 월 20 일 실습.  실험제목 ◦ 데이터베이스 커넥션 풀  목표 ◦ 데이터베이스 커넥션 풀의 사용.
Chapter 07 : 서블릿 고급2. chapter 07 : 서블릿 고급2 학습목표 세션 tracking hidden 태그 이용 encodeURL 메소드 사용법 URL 파라미터 이용 쿠키 이용 세션 이용 encodeURL 메소드 사용법.
PARK SUNGJIN Oracle 설치 PARK SUNGJIN
You YOungseok 데이터베이스 테이블 및 인덱스 You YOungseok.
Power Java 제3장 이클립스 사용하기.
MS-Access의 개요 1강 MOS Access 2003 CORE 학습내용 액세스 응용 프로그램은 유용한 데이터를
4강. Servlet 맛보기 Servlet 문서 작성 하기 web.xml에 서블릿 맵핑 어노테이션을 이용한 서블릿 맵핑
제 08 장 자바 빈즈 학기 인터넷비즈니스과 강 환수 교수.
제 09 장 데이터베이스와 MySQL 학기 인터넷비즈니스과 강 환수 교수.
13장. 자바빈과 데이터베이스를 연동한 게시판 시스템
6장 Mysql 명령어 한빛미디어(주).
MVC 기반 게시판 작성 Youbok Choi.
MySQL 및 Workbench 설치 데이터 베이스.
(개정판) 뇌를 자극하는 Red Hat Fedora 리눅스 서버 & 네트워크
14장 질의응답 한빛미디어(주).
5장 Mysql 데이터베이스 한빛미디어(주).
forms 객체 입력상자 체크상자, 라디오 버튼 목록상자
4장. 웹로직 서버상에서의 JDBC와 JTA의 운용
ASP.NET : Database 접근 2008 컴퓨터공학실험(Ⅰ)
4-1장. MySQL 제13장.
3.2 SQL Server 설치 및 수행(계속) 시스템 데이터베이스 master
1. C++ 시작하기.
SqlParameter 클래스 선문 비트 18기 발표자 : 박성한.
                              데이터베이스 프로그래밍 (소프트웨어 개발 트랙)                               퍼스널 오라클 9i 인스톨.
18강. 데이터 베이스 - II JDBC 살펴보기 Statement객체 살펴보기 Lecturer Kim Myoung-Ho
17강. 데이터 베이스 - I 데이터 베이스의 개요 Oracle 설치 기본적인 SQL문 익히기
Power Java 제14장 배치 관리자.
14 SQLite DB 활용 B A S I C 1 4_ 고객 등록과 조회 L A B 1 4_ 수정과 삭제를 포함하는 고객관리시스템 Advanced LAB 14_ 탭 메뉴의 고객관리시스템.
KHS JDBC Programming 4 KHS
5장 Mysql 데이터베이스 한빛미디어(주).
DB연동하기 원격db접속.
속성과 리스너 초기화 파라미터 외 파라미터에 대해 이해한다. 리스너를 생성해보고 사용에 대해 이해한다.
You YoungSEok Oracle 설치 You YoungSEok
2장 JSP 개발 환경 설정 이장에서 배울 내용 : JSP 페이지를 작성하기 위한 개발환경을 설정하고, 웹 어플리케이션 개발을 위해 반드시 이해하여야 할 웹 어플리케이션 폴더 구조에 대해 학습한다. 또한 요청된 JSP 페이지가 어떠한 처리과정을 거쳐 응답이 이루어지는가에.
CHAP 13. 방명록 만들기 실습.
게임웹사이트운영 [10] 폼 작성.
반응형 웹 프로젝트
JDBC Lecture 004 By MINIO.
JSP 게시판 구현.
15장 자료실 한빛미디어(주).
2장. 데이터베이스 관리 시스템 데이터베이스 관리 시스템의 등장 배경 데이터베이스 관리 시스템의 정의
영상처리 실습 인공지능연구실.
HTTP 프로토콜의 요청과 응답 동작을 이해한다. 서블릿 및 JSP 를 알아보고 역할을 이해한다.
PRM 정보관리 업체 메뉴얼
Chapter6 : JVM과 메모리 6.1 JVM의 구조와 메모리 모델 6.2 프로그램 실행과 메모리 6.3 객체생성과 메모리
폼 관련 태그 폼 양식 직접 만들어보기 회원가입 절차 4단계
USN(Ubiquitous Sensor Network)
기말 프로젝트 계획 MVC 패턴 기반 웹 애플리케이션 개발 프로젝트명 : 팀명 : 팀원 :
CHAP 21. 전화, SMS, 주소록.
11. 어댑터뷰 제목. 11. 어댑터뷰 제목 리스트뷰와 그리드뷰 활용법을 배운다. 갤러리와 스피너의 사용법을 익힌다.
문성우 SQL 실습 Part Ⅰ 문성우.
STS 에서 웹 서버 설치 방법.
12강. 컨트롤러 컨트롤러 클래스 제작 요청 처리 메소드 제작 뷰에 데이터 전달
오라클 11g 보안.
3장 JSP프로그래밍의 개요 이장에서 배울 내용 : JSP페이지의 기본적인 개요설명과 JSP페이지의 처리과정 그리고 웹 어플리케이션의 구조에 대해서 학습한다.
자바빈/커넥션 풀/세션을 사용한 Ajax 기반의 게시판 시스템
제 23 장 오라클에서 보안 기능.
안드로이드 앱 개발과정 Step1. 기초과정 강사 : 정 훈 희.
01. 분산 파일 시스템의 개요 네트워크에 분산된 파일을 사용자가 쉽게 접근하고 관리할 수 있게 해준다.
JSP Programming with a Workbook
Android -Data Base 윤수진 GyeongSang Univ. IT 1.
JSP Programming with a Workbook
maria db JDBC PROGRAMMING 5
Power Java 제14장 배치 관리자.
웹과 모바일 홈페이지의 이해와 제작 [PHP / MYSQL] 게시판 만들기
도서 판매 시스템 팀장 이상제 김호재 최문선 안영훈.
 6장. SQL 쿼리.
프로젝트 결과 발표 네트워크정보통신과 강동성 이현미.
7 생성자 함수.
Presentation transcript:

14장. 커넥션풀을 사용한 간단한 쇼핑몰 구축하기 이 장에서 배울 내용 : 앞에서 배운 부분을 종합적으로 학습하기 위해, 쇼핑몰을 작성하는 방법을 학습한다. 쇼핑몰에는 앞에서 배우 것에 추가적으로 파일 업로드의 사용, 트랜잭션이 있어 이들에 대해서도 살펴본다. 김은옥(oda94@naver.com)

목차 파일 업로드 쇼핑몰 구축하기

파일 업로드 파일 업로드를 위한 기본적인 폼 형태 파일 업로드를 위한 폼은 form 태그의 속성들 중 method속의 값은 "post", enctype속성의 값은 "multipart/form-data"로 지정 <form name="formName" method="post" enctype="multipart/form-data"> 파일을 업로드하기 위해 입력 받기 위해서는 <input>태그의 type속성의 값을 "file"로 지정 <input type="file" name="selectfile">

파일 업로드 cos.jar 다운로드 및 배치 cos.jar 파일은 http://www.servlets.com 사이트에서 다운로드 cos.jar파일을 톰캣홈\lib폴더 및 이클립스의 [프로젝트]-[WEB-INF]-[lib]폴더에 복사해서 붙여넣기

파일 업로드 파일업로드 및 폼 요소를 처리하는 MultipartRequest 클래스 cos.jar파일은 파일업로드 및 폼 요소를 처리하는 MultipartRequest 클래스를 제공 MultipartRequest 클래스의 생성자 MultipartRequest(javax.servlet.http.HttpServletRequest request, java.lang.String saveDirectory, //파일 업로드할 폴더 int maxPostSize, //업로드 할 파일의 최대크기 java.lang.String encoding, //인코딩방식 FileRenamePolicy policy) //기본 보안 적용

파일 업로드 파일업로드 및 폼 요소를 처리하는 MultipartRequest 클래스 메소드 : 리턴타입 getContentType(java.lang.String name) : java.lang.String 업로드된 파일의 컨텐트 타입을 반환하는 것으로, 업로드된 파일이 없으면 null을 리턴한다. getFile(java.lang.String name) : java.io.File 서버 상에 업로드된 파일을 File객체 타입으로 리턴한다. 업로드된 파일이 없다면 null을 리턴한다. getFileNames() : java.util.Enumeration 폼의 요소들 중 <input type="file">로 된 파라미터들을 받아서 Enumeration타입의 객체를 리턴한다. getFilesystemName(java.lang.String name) : java.lang.String 사용자가 업로드한 파일의 서버 상에서의 실제 파일명을 리턴한다.

파일 업로드 MultipartRequest클래스가 제공하는 주요 메소드 메소드 : 리턴타입 getOriginalFileName(java.lang.String name) : java.lang.String 사용자가 업로드한 파일의 원래 파일명을 리턴한다. 파일명이 중복될 경우 이름이 변경되므로, 변경 되기 전의 원래 파일명이 리턴된다. getParameter(java.lang.String name) : java.lang.String name에 해당하는 파라미터의 값을 리턴한다. getParameterNames() : java.util.Enumeration 폼의 요소들 중 <input type="file">아닌 파라미터들을 Enumeraton객체타입으로 리턴한다. getParameterValues(java.lang.String name) : java.lang.String[] 하나의 파라미터에 대해 여러개의 값을 가지는 <input type="checkbox">와 같은 경우에 파라미터의 값을 얻어내기 위해 사용된다.

쇼핑몰 구축하기 목차 쇼핑몰 시스템의 기본구조 테이블 작성 관리자영역 작성 사용자영역 작성

쇼핑몰 시스템의 기본구조 쇼핑몰은 기본적으로 물품을 등록 및 수정하고 구매된 목록을 관리하는 관리자의 영역과 등록된 상품을 기반으로 작성된 쇼핑몰을 통한 사용자의 쇼핑영역으로 나뉨

쇼핑몰 시스템의 기본구조 폴더 구조별 작성할 JSP페이지와 패키지 별로 작성해야 할 자바 빈

테이블 작성 쇼핑몰 시스템에서 수정 및 생성할 각 테이블의 정보 테이블명 설명 생성형태 member 쇼핑몰의 고객 정보를 저장 관리 기존 테이블 수정 manager 쇼핑몰의 관리자 정보를 저장 관리 새로 생성 book 쇼핑몰의 상품을 저장 관리 bank 상품 구매 시 입금 계좌 정보를 저장 관리 cart 장바구니의 상품 목록을 저장 관리 buy 상품 구매 시 구매 상품의 목록을 저장 관리

테이블 작성 [member] 테이블 수정 -쇼핑을 하는 사용자의 정보를 가짐 alter table member add address varchar(100) not null; add tel varchar(20) not null; update member set address='서울시 마포구 양화로6길 9', tel='010-1111-1111' where id='aaaa@king.com'; set address='인천시 남동구 정각로 29', tel='010-2222-1234' where id='hongkd@aaa.com'; set address='경기도 구리시 아차산로 439', tel='010-3333-3333' where id='kingdora@dragon.com';

테이블 작성 [manager] 테이블 생성 - 쇼핑몰의 관리자 정보를 저장 create table manager( managerId varchar(50) not null primary key, managerPasswd varchar(16) not null ); insert into manager(managerId,managerPasswd) values('bookmaster@shop.com','123456');

테이블 작성 [book] 테이블 생성 -상품에 대한 정보를 가짐 create table book( book_id int not null primary key auto_increment, book_kind varchar(3) not null, book_title varchar(100) not null, book_price int not null, book_count smallint not null, author varchar(40) not null, publishing_com varchar(30) not null, publishing_date varchar(15) not null, book_image varchar(16) default 'nothing.jpg', book_content text not null, discount_rate tinyint default 10, reg_date datetime not null );

테이블 작성 [bank] 테이블 생성-결제계좌에 대한 정보를 가짐 create table bank( account varchar(30) not null, bank varchar(10) not null, name varchar(10) not null ); insert into bank(account, bank, name) values('11111-111-11111','내일은행','오내일');

테이블 작성 [cart] 테이블 생성-장바구니 역할 create table cart( cart_id int not null primary key auto_increment, buyer varchar(50) not null, book_id int not null, book_title varchar(100) not null, buy_price int not null, buy_count tinyint not null, book_image varchar(16) default 'nothing.jpg' );

테이블 작성 [buy] 테이블 생성-사용자가 구매한 상품에 대한 정보를 가짐 create table buy( buy_id bigint not null , buyer varchar(50) not null, book_id varchar(12) not null, book_title varchar(100) not null, buy_price int not null, buy_count tinyint not null, book_image varchar(16) default 'nothing.jpg', buy_date datetime not null, account varchar(50) not null, deliveryName varchar(10) not null, deliveryTel varchar(20) not null, deliveryAddress varchar(100) not null, sanction varchar(10) default '상품준비중' );

관리자 영역 작성 관리자는 새로운 상품(여기서는 책)을 등록/수정/삭제 관리하는 상품 관리 작업과 구매된 구매목록을 가지고 구매 및 배송 등의 구매 관리 작업. 관리자 영역은 크게 관리자를 인증하는 부분과 상품관리를 하는 부분 및 구매 관리를 하는 부분으로 나눔.

관리자 영역 작성 관리자 영역

관리자 영역 작성 관리자 영역의 자바 빈 : ch14.bookshop.master 패키지 상품 등록/수정 /삭제 시 데이터저장에 사용하는 빈 - ShopBookDataBean.java 상품을 등록/수정/삭제 시 데이터베이스와 연동하는 빈 - ShopBookDBBean.java

관리자 영역 작성 관리자 영역의 자바 빈 : ch14.bookshop.master 패키지

관리자 영역 작성 관리자의 메인페이지 및 인증관련 페이지의 작성

관리자 영역 작성 상품 등록, 수정 및 삭제 작업 페이지 작성

관리자 영역 작성 주문된 구매목록 관리 페이지 작성

사용자 영역 작성 사용자의 영역은 크게 세 부분으로 구분 쇼핑을 하기 위한 화면을 구성하는 부분 쇼핑몰에서 장바구니에 담기를 한 후의 장바구니의 관리 부분 장바구니에서 구매를 수행했을 때 처리해야 할 작업을 수행하는 부분

사용자 영역 작성 사용자 영역

사용자 영역 작성 사용자 영역의 페이지 및 자바빈

사용자 영역 작성 쇼핑하기 위한 부분에서 필요한 페이지와 자바빈

사용자 영역 작성 쇼핑하기 위한 부분에서 필요한 페이지와 자바빈 자바빈 쇼핑을 하기 위한 화면구성에서 데이터를 저장하는 자바빈 : CustomerDataBean.java 쇼핑을 하기 위한 화면구성에서 DB와 연동하는 자바빈 : CustomerDBBean.java

사용자 영역 작성 쇼핑하기 위한 부분에서 필요한 페이지와 자바빈 JSP페이지 쇼핑몰 메인 페이지인 :shopMain.jsp 메인 페이지의 초기 내용 표시: introList.jsp 회원 인증 : loginPro.jsp, logout.jsp

사용자 영역 작성 장바구니 관리에서 필요한 페이지와 자바 빈

사용자 영역 작성 장바구니 관리에서 필요한 페이지와 자바 빈 자바빈 장바구니에서 데이터를 저장하는 자바빈 : CartDataBean.java 장바구니에서 DB와 연동하는 자바빈 : CartDBBean.java

사용자 영역 작성 장바구니 관리에서 필요한 페이지와 자바 빈 JSP 페이지 장바구니에 상품 추가 페이지 :cartInsert.jsp 장바구니 목록 표시 페이지 : cartList.jsp 장바구니 목록의 수량을 변경 폼 updateCartForm.jsp 장바구니 목록의 수량을 변경하는 페이지 : updateCart.jsp 장바구니 목록의 개별 항목 삭제 및 장바구니 비우기 페이지 : cartListDel.jsp

사용자 영역 작성 구매 관리에서 필요한 페이지와 자바 빈

사용자 영역 작성 구매 관리에서 필요한 페이지와 자바 빈 자바빈 구매 작업을 위해 데이터를 저장하는 자바빈 BuyDataBean.java 구매 작업을 위해 DB와 연동하는 자바빈 BuyDBBean.java

사용자 영역 작성 구매 관리에서 필요한 페이지와 자바 빈 JSP페이지 구매 폼 페이지 buyForm.jsp 구매목록에 추가하는 작업을 처리하는 페이지 buyPro.jsp 구매된 목록을 확인하는 페이지 buyList.jsp