본문 바로가기
프로그래밍/Java & GWT

ibatis - hibernate 프레임워크 비교

by 뽀도 2016. 8. 22.

 

ibatis (mybatis)
- iBATIS는 SQL에 대한 모든 컨트롤을 하고자 할때 매우 적합하다.
- SQL쿼리들이 매우 잘 최적화되어있을때에도 유용하다.
- iBATIS는 애플리케이션과 데이터베이스간의 설계에 대한 모든 조작을 하고자 할때는 적합하지 않다.


그 이유는 애플리케이션과 데이터베이스간에 서로 잘 구조화되도록 설정이 바뀌어야하기 때문이다.
이러한 경우에 객체관계(object-relational)애플리케이션을 개발할 수 있으며 다른 ORM툴을 사용하는것이 더 올바른 선택일 것이다.


- iBATIS는 상대적으로 더 SQL중심적이기때문에, SQL을 직접적으로 사용하게 된다.

- iBATIS는 관계 데이터베이스가 아닌 데이터베이스들을 사용할때에도 적절치 않다. 그러한 데이터베이스들은 트랜잭션이나 iBATIS가 사용하는 주요 기능들을 제공하지 않기 때문이다.

 

Hibernate

- Hibernate는 하나부터 열까지 OR매핑을 하고자 할때 가장 좋다.
  이는 완벽한 ORM솔루션을 제공하지만 쿼리에 대한 제어를 어렵게 한다.
 - Hibernate는 애플리케이션과 데이터베이스 각각에 대한 설계에 대한 완벽한 통제가 가능한 상황에서 이상적인 솔루션이다.
이런 경우 애플리케이션을 데이터베이스에 맞도록 수정하거나 데이터베이스를 애플리케이션에 맞도록 수정할 것이다.
이런 경우에 완전한 object-relational 애플리케이션을 구축하기 위하여 Hibernate를 사용할 수 있을 것이다. Hibernate는 SQL에 익숙하지 않은 객체지향 프로그래머에게 최고의 옵션이다.

 

 

 

느낀점

 -  spring-struts를 사용할때는 ibatis를 통한 DB 접근을 ,  GWT로 개발을 할때는 Hibernate를 통해 개발했는데 딱히 뭐가 더 좋다, 뭐가더 나쁘다는 구분하지 못하겠다.

-  sql 쿼리에 대한 의존도가 더 높은쪽은 ibatis다. hibernate는 질의할때 sql 쿼리를 직접쓰는 방법과 hibernate 문법을 사용하는 방법이 있기때문에 골라서 쓰면된다.

 

 

 

참고 블로그

 

https://humbroll.wordpress.com/2009/11/12/1-ibatis-hibernate-%EA%B7%B8%EB%A6%AC%EA%B3%A0-jpa-%EB%AC%B4%EC%97%87%EC%9D%84-%EC%84%A0%ED%83%9D%ED%95%A0-%EA%B2%83%EC%9D%B8%EA%B0%80/


 

반응형

'프로그래밍 > Java & GWT' 카테고리의 다른 글

java 빌드 도구  (0) 2016.08.22
jdbc란? ORM은?  (0) 2016.08.22
[java] awt - button 만들기.  (0) 2016.08.21
[ibatis] #, $ 의 차이  (0) 2016.07.25
[GWT] 1. sample 프로젝트 만들기.  (0) 2016.07.20

댓글