반응형
01. myBatis vs hybernate vs spring
1) 프레임워크란?
- 프레임워크는 약간의 비어있는 뼈대를 제공해주는 것 (전체적인 흐름은 완성되어있되 살은 안붙어있는 것)
- 그 비어있는 곳만 채워주면 프로그램이 완성된는 것
- 즉, 이미 반 이상이완성되어있는 프로그램 = 프레임워크라 부름
2) myBatis 프레임워크
- persistence layout을 지원하는 프레임워크
- 즉, DAO를 만들어주는 프레임워크
- 웹프로그램은 hybernate 프레임워크보다는 mybatis를 더 많이 사용함
- mybatis는 spring 보다 select 만큼은 강력한 기능을 제공해줌!!!
- 단, 자바 언어만 가능(자바만을 위한 프레임워크)
3) hybernate 프레임워크
- 모든 언어 다 가능
4) spring 프레임워크
- 모두 다 지원해주는 통합 프레임워크
- persistence layout, business layout , presentation layout (view) 을 지원하는 프레임 워크가 될 수 있음
- 경량화된 프레임워크지만, 중요한 라이브러리 다 제공해줌
- 다른 라이브러리도 가져다 쓸 수 있음 (확장성이 뛰어남)
02. myBatis프레임워크 프로젝트에 빌드처리 하는 법
- 공부 참고 사이트 : MyBatis – 마이바티스 3 | 소개
- myBatis프레임워크 프로젝트에 빌드처리 참조 사이트 : The MyBatis Blog
- mybatis가 어떻게 개발되었는지 써있음
- ibatis2를 구글이 인수하면서 ibatis3을 mybatis3으로 부름
- 즉, 구글에서 제공해주는 프레임워크임
- 우리는 mybatis 3버전 사용할 것임!
- products 클릭
- 최신버전 zip파일 다운받기
- 프로젝트에 빌드처리
03. myBatis의 개념 및 특징
1) myBatis란?
- 개발자가 지정한 SQL, 저장프로시저 , 몇가지 고급 매핑을 지원하는 Persistence 프레임워크
2) Persistence 프레임워크란?
Business Layout
- 필요한 데이타를 조작 (더하기 빼기 곱하기 전달값 전달..)
- 실제 일하는 레이아웃 - 예시) Spring프레임워크
Presentation Layout
- 데이타의 처리 결과를 보여주는 것
- 일반적으로 출력과 관련된
- 웹에서는 출력을 JSP(HMTL)가 함
- HTML : 프레임워크없음
- CSS : 부트스트랩 프레임워크
- JS : Angular.js프레임워크 (자바스크립트를 MVC형태로 만들어주는 프레임워크), React 라이브러리
Persistence Layout
- Spring프레임워크 - Persistence 프레임워크에 많이 사용
- Hybernate프레임워크 - 해외에서 많이 사용
- myBatis프레임워크 - 우리나라에서 가장 많이 사용
- 사용자가 지정한 SQL, 저장프로시저, 몇가지 고급 매핑을 지원
3) myBatis의 역할
- JDBC로 처리하는 상당부분의 코드와 파라미터 설정 및 결과 매핑을 대신해줌
- 데이터베이스 레코드에 원시타입과 Map인터페이스 그리고 자바 POJO를 설정해서 매핑하기 위해 XML과 애노테이션 사용가능 (기존의 쓰던 자바객체를 그대로 사용해 매핑처리가능)
- 즉, DAO클래스를 만들기 위해서는 XML을 잘 만들거나 애노테이션을 잘 쓰면 됨!!!
- VS ibatis : 애노테이션 기능 없었음
💖maven (빌드 툴 프로그램)
- 라이브러리를 자동으로 빌드처리 해주는 프로그램 (빌드 툴)
- 메이븐(maven)을 사용한다면 pom.xml에 다음의 설정 추가
- 하지만 현재 우리가 지금 만드는 프로젝트에는 사용하지 않음
- 스프링의 가장 기본은 메이븐이기 때문에 나중에 스프링 프레임워크로 프로젝트 만들 때 사용할 것임
- 참고) 현업에서는 스프링부트보다 스프링을 더 많이 사용함
pom.xml
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>x.x.x</version>
</dependency>
💖다이나믹 웹 프로젝트
- 현재 우리가 만드는 프로젝트
- 기본적으로 메이븐이 존재하지 않음!
04. mybatis의 핵심
- resultMap이 주는 핵심기술
- 강력한 동적 SQL
반응형
'framework > mybatis' 카테고리의 다른 글
[mybatis] 6. XML + 인터페이스 기반의 매퍼파일 (MyMember 출력 프로그램) (1) | 2024.07.21 |
---|---|
[mybatis] 5. 인터페이스 기반의 매퍼파일 (MyMember 출력 프로그램) (1) | 2024.07.20 |
[mybatis] 4. XML기반의 매퍼파일 (MyMember 출력 프로그램) (0) | 2024.07.20 |
[mybatis] 3. XML기반의 매퍼파일 (Student 출력 프로그램) (0) | 2024.07.20 |
[mybatis] 2. MYBATIS 환경설정 (0) | 2024.07.19 |