|
by adaypuppy 블로그 이전
adaypuppy.tistory.com 이글루 파인더
카테고리
태그
이글루링크
skin by 이글루스 |
// 아.. java 잼난게 많다. -_-
// 뭐냐 이건.. ZdNetKorea > 빌더 > 개발 > 기타 [오픈소스를 이용한 시스템 통합] ④ OR 맵핑 툴 하이버네이트 //..대부분의 애플리케이션 개발이 객체지향 기술을 사용하고 있는 데 반해, 데이터베이스는 관계형 데이터 모델을 사용하는 RDBMS를 이용하고 있다. 이로 인해 객체 모델링과 관계형 데이터 모델링 사이에 개념적 불일치가 존재하게 되고, 거의 모든 프로젝트에서는 퍼시스턴스 계층의 구현에 심각한 수준의 복잡도 부담을 떠안게 되는 것이다. 이러한 문제들을 해결하기 위해 OR 맵핑을 자동화해 주는 다양한 도구와 기술들이 등장했다. EJB의 CMP(컨테이너 관리 퍼시스턴스) 방식의 엔티티 빈도 있고, CocoBase나 TopLink와 같은 전문 제품들도 있다. 최근 OR 맵핑 도구로써 주목을 끌고 있는 것은 XML을 사용하는 퍼시스턴스 프레임워크이다. //.. iBatis는 개발자들에게 익숙한 SQL 쿼리를 직접 사용하기 때문에 개념적인 오버헤드가 적은 편이다. 따라서 OR 맵핑 도구에 익숙하지 않은 개발자라고 하더라도 쉽게 적응할 수 있다. //..결론적으로 엔티티 빈의 대안으로 거론되는 퍼시스턴스 프레임워크 중 당장 실무에서 사용하기에 적합한 것은 iBatis이다. //.. JNaverCafe WiKi > Hibernate > PersistentLayer SQLMaps를 이용한 객체-관계 맵핑(Object-Relational Mapping with SQLMaps) //.. 결론 SQLMaps는 만약에 당신의 애플리케이션이 작은 수의 고정된 쿼리문을 가지고 있다고 할때 매우 좋은 옵션이다. 이것은 개발자가 이미 알고 있는 SQL에 대한 지식을 이용하기 때문에 매우 쉽다. 또한 각자의 역할을 구분하는 데 도움이 된다. 개발자는 필요한 쿼리문 목록을 작성하고 자바 코드에서 작업을 시작한다. SQLMaps XML파일을 받은 DBA는 SQL쿼리를 분석하고 튜닝한다. 장점 OR맵핑 프레임워크에서 제공하는 Dialects 에 의존하지 않는다. 많은 향상된 기능을 제공하므로 사용하기 쉽다. EJBQL같은 새로운 쿼리언어를 배울 필요가 없다. 당신의 SQL문에 대한 기존 지식을 활용할 수 있다. 단점 만약에 향상된 기능을 사용한다면 어플리케이션은 이식가능하지 않다.(역자 주. 이는 SQLMaps의 고유의 특이한 기능을 사용하는 것이기 때문에 이식이 사실상 불가능함을 뜻하는것 같다.) 하지만 애플리케이션이 다중 데이터베이스보다 더 복잡한 환경에서 작동하거나 많은 수의 쿼리문을 가진다면 마지막 결정을 하기 전에 다양한 OR맵핑 프레임워크를 살펴보는 것이 좋을 것이다.(역자 주. 비교적 간단한 데이터베이스 환경이나 적은 수의 쿼리문을 사용할 때 적합하다고 보는 것 같다. 하지만 여기서 비교적 간단한 데이터 베이스 환경이나 쿼리문의 적음이 뜻하는 바는 개발자마다 다르다고 생각한다. 개인적으로 적용해 본 후 판단하길 바라지만 국내의 대부분의 프로젝트가 이 제약을 넘어서지는 않을 것 같다는게 개인적인 생각이다.)
|