Spac 매뉴얼/MySQL Dao2009. 11. 14. 00:26
Mysql 데이터베이스와 연결하여 다양한 기능을 수행하는 어플리케이션을 위한 Database Access Object Controller 입니다.

예제상의 Mysql Dao 는 Mysql 5.x 버전을 토대로 만들어졌으나 4.x  버전 이상이라면 무난하게 사용하실 수 있습니다.
단, Transaction 기능을 사용하시려면 테이블 작성시 "InnoDB" 로 작성하셔야 합니다.



Spac Dao 의 특징은 다음과 같습니다.

* Spac 의 기본 Dao 로서 Spac 프레임웍을 이용해 웹어플리케이션 개발시 쉽게 연동하여 사용할 수 있습니다.

* 일반 변수 대입방식의 쿼리문 및 "?"를 이용한 쿼리바인딩을 지원합니다.

* 정상적으로 종료되지 않은 어플리케이션은 Database를 자동으로 Rollback 시켜줍니다.

* 쿼리문의 로깅을 지원합니다.





Mysql 용 Dao는 네개의 파일로 구성됩니다.

* Dao.Class.php      : Mysql 데이터베이스에 연결하고 쿼리문 실행을 하며 다양한 SQL 작업을 실행합니다.
* Dao.ini                 : Dao 실행에 관련된 설정값 정보를 담고 있습니다.
* DaoConnection.ini   : Mysql 서버에 연결하기 위한 연결 정보를 담고 있습니다.
* DaoTables.ini        : Mysql 서버 계정의 각 테이블명 정보를 담고 있습니다.


Dao 를 Spac에서 사용하기 위해서는 Spac 경로에 Dao를 복사해야 합니다.
Dao를 Spac에서는 컨트롤러로 취급하므로 컨트롤러경로 아래에 "Dao" 라는 디렉토리를 만들고 그 안에 위치시킵니다.
(Spac 기본 패키지에는 Dao가 포함되어 있으므로 참고만 합니다.)

배치의 예는 아래와 같습니다.





먼저 "Dao.Class.php" 파일을 에디터로 열어 Dao 기본경로값인 "$daoPath" 변수값을 자신의 환경에 맞게 고쳐줍니다.
경로값은 웹경로의  "index.php" 파일의 위치에서 부터 현재 파일의 상대경로값을 입력하시거나, 절대경로값을 입력합니다.





그리고 "Dao.ini" 파일을 열어 데이터베이스 연결 정보를 자신의 데이터베이스 연결 환경에 맞게 수정합니다.
아래 경로중 "dbLogFilePath" 값은 반드시 절대경로를 넣어야 합니다.




다음은 "DaoConnection.ini" 파일을 열어 MySQL 접속 정보를 설정합니다.



마지막으로 "DaoTables.ini" 파일을 열어 사용하는 테이블 정보를 입력합니다.
아래 그림을 참조하여 변수명 = "변수값" 의 형태로 작성합니다.
변수명은 적당한 변수명을 입력하시면 되고, 변수값은 해당 변수명에 지정할 실제 테이블명을 입력합니다.

이 테이블 정보는 비즈니스로직에서 데이터베이스 관련 프로세스 수행시 테이블명 입력시 변수로 이를 대신하여 코드를 작성하기 위해 필요하므로, 쿼리문 작성시 테이블명을 변수로 할당하여 사용하지 않고 직접 테이블명을 명시하여 코드를 작성하시는 경우에는 설정하실 필요가 없습니다.



이로서 Dao 를 사용하기 위한 준비를 마쳤습니다.

이제 실제 데이터베이스 연결과 SQL 문의 실행, 결과값 처리, 화면 출력 등 예제를 실행해 보겠습니다.


Posted by webdata