아파치 iBATIS
Apache iBA개발자 | Apache 소프트웨어 재단 |
---|---|
기입처 | Java, .NET, Ruby |
운영 체제 | 크로스 플랫폼 |
유형 | 지속성 프레임워크 |
면허증. | Apache 라이센스 2.0 |
웹 사이트 | ibatis |
iBATIS는 Java에서 SQL 데이터베이스와 객체 간의 매핑을 자동화하는 지속성 프레임워크입니다.NET 및 Ruby on Rails.Java에서 오브젝트는 POJO(Plain Old Java Objects)입니다.매핑은 SQL 문을 XML 구성 파일로 패키징하여 응용 프로그램 로직에서 분리됩니다.그 결과 개발자가 JDBC 및 ODBC와 같은 하위 수준의 API를 사용하여 관계형 데이터베이스에 액세스해야 하는 코드 양이 크게 감소합니다.
Hibernate와 같은 다른 지속성 프레임워크에서는 사용자가 객체 모델(예를 들어 Java)을 작성하고 관계형 데이터베이스를 자동으로 만들고 유지할 수 있습니다.iBATIS는 반대로 접근합니다.개발자는 SQL 데이터베이스와 iBA부터 시작합니다.TIS는 Java 객체 작성을 자동화합니다.두 방법 모두 장점이 있으며 iBA는개발자가 SQL 데이터베이스 스키마를 완전히 제어할 수 없는 경우 TIS를 선택하는 것이 좋습니다.예를 들어, 애플리케이션은 다른 소프트웨어에서 사용되는 기존 SQL 데이터베이스에 액세스하거나 전문 데이터베이스 설계팀이 스키마를 작성하고 고성능을 위해 신중하게 최적화한 경우 등 스키마가 완전히 애플리케이션 개발자의 관리 하에 있지 않은 새 데이터베이스에 액세스해야 할 수 있습니다.
2010년 5월 21일, 개발팀은 MyBatis라는 새로운 프로젝트를 만들고 그곳에서 새로운 릴리스를 만드는 데 성공했습니다.그 결과 Apache iBA는TIS 프로젝트는 중단되어 2010년 6월에 Apache Attic으로 옮겨졌습니다.
사용.
예를 들어 데이터베이스 테이블이 있다고 가정합니다.PRODUCT(PROD_ID INTEGER, PROD_DESC VARCHAR(64) 및 Java 클래스 com.example).제품(ID: int, 설명: 문자열).PROD_ 키를 가진 제품 기록을 읽다새 제품 POJO에 ID를 입력하면 다음 매핑이 iBA에 추가됩니다.TIS XML 매핑파일:
<select id="getProduct" parameterClass="java.lang"을 선택합니다.long" resultClass="com.example" 입니다.제품" > [ PROD _ ]를 선택합니다.ID는 ID, PROD_DESC는 PROD_의 설명입니다.ID = #value# </select>
그런 다음 다음과 같이 제품 번호 123의 데이터베이스에서 새 Java 제품 개체를 검색할 수 있습니다.
제품. 결과 제품 = (제품.) sqlMapClient.queryForObject("제품 가져오기", 123);
매핑 파일의 예에서는,#value#
는 쿼리에 전달되는 긴 정수 값입니다.파라미터가 Java 오브젝트인 경우 해당 오브젝트의 속성 값을 유사한 방법으로 쿼리에 삽입할 수 있습니다.#
표기법예를 들어 파라미터 클래스가com.example.Product
그 성질을 가진 것은id
,그리고나서#value#
로 대체할 수 있다#id#
.그sqlMapClient
object는 클래스의 인스턴스입니다.com.ibatis.sqlmap.client.SqlMapClient
.
유용성
iBA 설립자TIS는 Java 5에 대한 실망감을 공개적으로 밝혔지만 계속해서 새로운 버전의 iBA를 출시하고 있다.Java용 TIS버전 2.3.1과 2.3.2는 2008년4월에, 2.3.3은 7월에 발매되었습니다.
이 프레임워크는 현재 Java 에서 사용할 수 있습니다.NET 및 Ruby(RBatis) 버전.jBati 프로젝트는 iBATIS에서 영감을 얻은 JavaScript ORM입니다.
Apache iBator 툴은 데이터베이스와 연결되어 메타데이터를 사용하여 iBA를 생성합니다.메타데이터를 사용하여 iBA를 생성합니다.TIS 매핑파일 및 Java 클래스
역사
2001년 iBA라는 프로젝트TIS는 클린턴 비긴에 의해 시작되었다.원래는 암호화 소프트웨어 솔루션의 개발에 중점을 두고 있었습니다.iBA의 첫 출시 제품TIS는 PGP와 같은 개인 데이터 암호화 [1]및 서명 도구인 Secrets였습니다.비밀은 완전히 Java로 작성되었으며 오픈 소스 라이센스로 공개되었습니다.
그 해, Microsoft는 최신의 것을 증명하는 논문을 발표했습니다[2].NET 1.0 프레임워크는 Java보다 생산성이 뛰어났습니다.이를 위해 마이크로소프트는 자체 버전의 Sun 웹 "펫 스토어"를 구축했습니다. 이 프로젝트는 Sun이 Java의 베스트 프랙티스(Java BluePrints)를 보여주기 위해 사용했던 웹 프로젝트입니다.마이크로소프트는 이렇게 주장했다.NET은 Java보다 10배 빠르고 4배 더 생산적이었습니다.
2002년에 클린턴은 JPetStore라고[3] 불리는 애플리케이션을 개발하여 Java가 보다 생산적일 수 있다는 것을 증명했습니다.또한 Microsoft 구현에서 사용된 것보다 더 나은 아키텍처를 구현하면서 이를 실현할 수 있습니다.
JPetStore 1.0은 큰 영향을[4] 미쳤고 클린턴이 사용한 데이터베이스 계층은 커뮤니티의 관심을 끌었다.곧 iBATIS Database Layer 1.0 프로젝트가 시작되었습니다.iBA는 2개의 컴포넌트로 구성되어 있습니다.TIS DAO 및 iBATIS SQL 맵
iBATIS 2.0은 2004년 [5]6월에 출시되었습니다.동일한 기능을 유지하면서 완전히 재설계한 것입니다.클린턴은 iBA를 기부했다.Apache Software Foundation의 TIS 이름과 코드 및 프로젝트는 6년간 ASF에 상주했습니다.
최종적으로는 iBA스프링 프레임워크와 같은 더 나은 DAO 프레임워크를 사용할 수 있다는 점을 고려하여 TIS DAO는 폐지되었다.
2010년 5월 19일 iBATIS 3.0이 공개됨과 동시에 개발팀은 구글 [6]코드에서 프레임워크 개발을 계속하기로 결정했다.MyBatis라는 새로운 프로젝트 아래.
2010년 6월 16일 Apache는 iBA가TIS는 은퇴했고 아파치 다락방으로 옮겨졌다.
「 」를 참조해 주세요.
레퍼런스
- ^ iBATIS의 비밀
- ^ 애완동물 가게에서의 고양이 싸움: J2EE vs.그물
- ^ "JPetStore 1.0" (PDF). Archived from the original (PDF) on 2013-10-21. Retrieved 2013-09-08.
- ^ TheServerside.com에서 JPetStore 1.0 발표
- ^ iBATIS 2.0 발표
- ^ iBATIS 프로젝트 팀이 Google 코드로 이동
참고 문헌
- Begin, Clinton; Brandon Goodin; Larry Meadors (January 17, 2007). iBATIS in Action (1st ed.). Manning. pp. 384. ISBN 978-1-932394-82-5.
- Richardson, Chris (January 23, 2006). POJOs In Action (1st ed.). Manning. pp. 456. ISBN 1-932394-58-3.