이제 Dao 를 Spac 프레임웍 내부로 불러와 데이터베이스에 연결하는 예제를 작성해보겠습니다.
회원 테이블을 관리하는 모델클래스를 만듭니다.
회원관리 클래스는 "Member"라는 이름으로 만듭니다.
이번 예제부터는 Spac 컨트롤러의 외부클래스 로드기능을 사용해야 하므로 "Controller" 를 상속받아 작성합니다.
* Spac/model/Member.Class.php
<?php
class Member extends Controller {
var $Dao;
function Member() {}
function initMember() { //맴버클래스 초기화메소드를 만들고 여기서 DB 연결을 합니다.
$this->getControllerInstance("Dao"); // Dao 클래스를 로드합니다.
$this->Dao->transaction = true; // 트랜젝션을 Start 합니다.
$this->Dao->Connect(); // DB를 연결합니다.
class Member extends Controller {
var $Dao;
function Member() {}
function initMember() { //맴버클래스 초기화메소드를 만들고 여기서 DB 연결을 합니다.
$this->getControllerInstance("Dao"); // Dao 클래스를 로드합니다.
$this->Dao->transaction = true; // 트랜젝션을 Start 합니다.
$this->Dao->Connect(); // DB를 연결합니다.
}
function execute() { //Spac의 기본 액션메소드를 정의합니다.
$this->initMember(); //기본메소드가 호출되면 DB연결을 수행합니다.
echo "<p>데이터베이스 연결에 성공했습니다.</p>";
}
}
?>function execute() { //Spac의 기본 액션메소드를 정의합니다.
$this->initMember(); //기본메소드가 호출되면 DB연결을 수행합니다.
echo "<p>데이터베이스 연결에 성공했습니다.</p>";
}
}
위의 예제는 Spac 컨틀로러의 메소드인 getControllerInstance 를 사용해서 Dao 클래스를 가져왔습니다.
일반적으로 위처럼 사용하면 되지만, 이클립스를 사용하는 경우 코드 자동완성기능을 사용하시려면 직접 Dao 클래스 파일을 삽입하여 사용해야 합니다.
즉, 아래와 같이 사용합니다.
==> getControllerInstance 를 사용하지 않는 예제
* Spac/model/Member.Class.php
<?php
require_once("C:\AutoSet6\www\Spac\controller\Dao\Dao.Class.php");
class Member extends Controller {
var $Dao;
function Member() {} //이번예제는 생성자에서 별도 할일이 없으므로 정의만 해 놓습니다.
function initMember() { //맴버클래스 초기화메소드를 만들고 여기서 DB 연결을 합니다.
$this->Dao = new Dao;
$this->Dao->transaction = true; // 트랜젝션을 Start 합니다.
$this->Dao->Connect(); // DB를 연결합니다.
require_once("C:\AutoSet6\www\Spac\controller\Dao\Dao.Class.php");
class Member extends Controller {
var $Dao;
function Member() {} //이번예제는 생성자에서 별도 할일이 없으므로 정의만 해 놓습니다.
function initMember() { //맴버클래스 초기화메소드를 만들고 여기서 DB 연결을 합니다.
$this->Dao = new Dao;
$this->Dao->transaction = true; // 트랜젝션을 Start 합니다.
$this->Dao->Connect(); // DB를 연결합니다.
}
function execute() { //Spac의 기본 액션메소드를 정의합니다.
$this->initMember(); //기본메소드가 호출되면 DB연결을 수행합니다.
echo "<p>데이터베이스 연결에 성공했습니다.</p>";
}
}
?>function execute() { //Spac의 기본 액션메소드를 정의합니다.
$this->initMember(); //기본메소드가 호출되면 DB연결을 수행합니다.
echo "<p>데이터베이스 연결에 성공했습니다.</p>";
}
}
위의 두가지 예제의 결과는 모두 같습니다만, 이클립스를 사용하여 개발할 경우 두번째 방법을 사용하면 자동완성기능이 활성화되어 더욱 편하게 개발하실 수 있습니다.
이로서 Database 연결을 구현하였습니다.
브라우저에 아래의 주소를 입력한 후 성공메세지가 출력되는지 확인합니다.
오류가 없었다면 "데이터베이스 연결에 성공했습니다." 라는 메세지가 화면에 출력될 것입니다.
'Spac 매뉴얼 > MySQL Dao' 카테고리의 다른 글
예제5 : 바인딩 변수를 이용한 조건 쿼리문의 실행 (0) | 2009.11.26 |
---|---|
예제4 : 뷰를 이용한 DB 데이터의 출력 (0) | 2009.11.20 |
예제3 : 데이터의 조회 (0) | 2009.11.18 |
예제2 : 테이블 생성 및 조회 (0) | 2009.11.18 |
Spac Dao for Mysql Ver 9.0629 (0) | 2009.11.14 |