아파치 iBATIS

Apache iBA
아파치 iBA
개발자Apache 소프트웨어 재단
기입처Java, .NET, Ruby
운영 체제크로스 플랫폼
유형지속성 프레임워크
면허증.Apache 라이센스 2.0
웹 사이트ibatis.apache.org

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#.그sqlMapClientobject는 클래스의 인스턴스입니다.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)를 보여주기 위해 사용했던 웹 프로젝트입니다.마이크로소프트는 이렇게 주장했다.NETJava보다 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는 은퇴했고 아파치 다락방으로 옮겨졌다.

「 」를 참조해 주세요.

레퍼런스

  1. ^ iBATIS의 비밀
  2. ^ 애완동물 가게에서의 고양이 싸움: J2EE vs.그물
  3. ^ "JPetStore 1.0" (PDF). Archived from the original (PDF) on 2013-10-21. Retrieved 2013-09-08.
  4. ^ TheServerside.com에서 JPetStore 1.0 발표
  5. ^ iBATIS 2.0 발표
  6. ^ iBATIS 프로젝트 팀이 Google 코드로 이동

참고 문헌

외부 링크