상세 컨텐츠

본문 제목

3-Tier 게시판 만들기(오라클)_01

사용하지 않는기술/엔터프라이즈LIB

by 김일국 2012. 3. 27. 10:02

본문

 

사용할 테이블과 프로시저를 만든다.

오라클쿼리소스 다운로드

 

ENT_BOARD.sql

 

테이블 : ENT_BOARD ( 쿼리 실행 후 SEQ, BOARDID 프라이머리키PK로 설정한다. )

조회프로시저 : ENT_BOARD_SELECT

저장프로시저 : ENT_BOARD_SAVE

삭제프로시저 : ENT_BOARD_DELETE

 

여기서 말하는 3티어란 게시판프로그램 구조를 3단으로 나눈것을 말한다.

1. Dada Access Layer 단 (편의상 앞으로 [Dac단] 이라 칭한다 )

2. Business Logic 단 ( 편의상 앞으로 [Biz단] 이라 칭한다 )

3. Aspx 웹폼 단 ( 편의상 앞으로 [View단] 이라 칭한다 )

 

처음 빈 웹 응용 프로그램 을 생성 하면 솔루션 탐색기에 아래와 같은 썰렁한 폴더 구조를 갖게 된다.
(참고로, 이전게시물에서 다뤘던 Web.config 를 EntLIB Config 프로그램으로 DBA Block의 커넥션을 설정하는 창을 띄워 놓았다.)

 

이제는 위 3단 구조로 솔루션 폴더구조를 만들기로 하겠다.

 

1. 파일 -> 새로 만들기 -> 프로젝트 -> 기타 프로젝트 형식 -> Visual Studio 솔루션을 선택.

-빈솔루션이 만들어집니다.

 

 

2. 도구 -> 옵션 -> 프로젝트 및 솔루션 -> 일반 -> 솔루션 항상 표시에 체크 기본 설정이 체크가 안되어 있는데 이 상태에서 솔루션에 프로젝트를 하나 추가하면 솔루션이 사라져버립니다.

 

3. Dac단, Biz단으로 사용할 프로젝트 추가

솔루션에 마우스 오른쪽 버튼 -> 추가 -> 새 프로젝트 -> 클래스 라이브러리를 선택하신 후

EntLib.Core 라는 이름을 넣고 확인을 누르면 클래스 라이브러리 프로젝트가 생성됨

 

4. View단으로 사용할 웹프로젝트 추가

웹 프로젝트는 ASP.NET 웹 응용 프로그램을 선택 한 후에 EntLib.Web 라는 이름으로 생성

 

5. 설치한 엔터프라이즈라이브러리에서(이전게시물참조) Data Access Application Block (이하 DAAB 이라 칭함)을 EntLib.Core 프로젝트에 참조추가 ( 2가지 Data와 Common )

새솔루션폴더 추가로 생성된 EntLib 폴더에 사용할 DAAB 2개 추가(추가 -> 기존 프로젝트 -> 해당 프로젝트 추가 -> 프로젝트별 csproj 파일 선택)
 

6. Core 프로젝트 아래에 있는 참조를 마우스 오른쪽 클릭 -> 참조 추가 창에서 프로젝트 탭

-> Data를 선택하시면 아래 참조가 추가됩니다.

동일한 방법으로 Common 도 추가

 

전체적인 모습은 아래와 같음.(소스다운로드)

 

EnterpriseLib.zip

 

( 엔터프라이즈라이브러리는 여러분들이 다운로드 받아서 컴파일된것이 있어야 합니다. )

 

 

 

7. 위에 보면 EntLib.Core 프로젝트에 3개의 폴더가 추가된 것을 볼수 있다.

 [Biz], [Data], [Util] 폴더를 생성하였다.

Data 폴더는 Data Access Layer 에 해당하는 클래스 파일의 묶음을 위한 폴더 입니다.
Biz 폴더는 Business Logic 에 해당하는 클래스 파일의 묶음을 위한 폴더 입니다.
마지막으로 Util 폴더는 공통 클래스 파일의 묶음을 위한 폴더로 생성하였습니다.

8. EntLib.Web 프로젝트에 EntLib.Core 프로젝트 참조추가

(EntLib.Web -> 참조 마우스 우클릭 -> 프로젝트 -> JariBium.Core 선택)

[Board] 폴더에는 게시판과 관련된 페이지가 생성될

 

9. [EntLib.Web]프로젝트의 Web.config 파일에서 마우스 오른쪽 버튼을 눌러서

Edit Enterprise Library Configuration 에디터를 호출한다(엔터프라이즈라이브러리를 설치하면 보인다)

ENT_BOARD.sql
0.0MB
EnterpriseLib.zip
0.84MB

관련글 더보기

댓글 영역