마이바티스 프로그래밍 원리와 활용(오픈소스 프로그래밍)
[마이바티스 프로그래밍 원리와 활용]은 마이바티스 프로그래밍에 대한 풍부한 설명과 그림을 제공함으로써 독자가 개발에 쉽게 접근할 수 있도록 안내한다. SQL 매퍼 프레임워크에 대한 기본 개념뿐만 아니라 마이바티스 설정, 매핑 구문 정의, 객체 사용에 관한 풍부한 예제를 익힌다면 마이바티스 전문가로 거듭날 수 있다. 실무에서 널리 사용되는 스프링과 연동해 웹 애플리케이션을 구성하는 다양한 방법을 초보자도 따라 할 수 있도록 차근차근 설명한다.
Couldn't load pickup availability
출판사 리뷰
출판사 리뷰
■ 초급 개발자를 위한 SQL 매퍼 프레임워크 개념 설명 및 구현 과정
■ 쉽고 체계적인 설명을 통한 마이바티스 프로그래밍 작성
■ 마이바티스 프로그래밍 작성 시 발생 가능한 에러와 해결 방안
■ 마이바티스 프로그래밍을 사용한 데이터 등록, 조회, 수정, 삭제
■ 마이바티스 환경 설정에 대한 명확한 이해 및 실무 적용
■ 마이바티스 매핑 구문 정의에 필요한 구성 요소와 속성
■ 마이바티스 객체 관계 및 다양한 API
■ 웹 애플리케이션 계층(프리젠테이션, 서비스, 퍼시스턴스) 구성과 역할
■ 마이바티스와 스프링 연동 방식(SqlSessionTemplate, SqlSessionDaoSupport, 자동 매핑)에 따른 웹 애플리케이션 구현
■ 마이바티스 개발 환경 구축 방법
■ 마이바티스 편집기(mybatiseditor, MyBatipse) 설치 및 사용법
■ 아파치 Log4j2를 이용한 마이바티스 로깅 설정 및 구현
■ 다양한 마이바티스 서드파티 캐시(Ehcache, Hazelcast, Memcached, OSCache) 연동 설정 및 구현
★ 이 책의 대상 독자 ★
■ 예제와 그림을 통해 마이바티스 기본 개념과 원리를 차근차근 알고 싶은 독자
■ 마이바티스에 대해 자세한 설명과 풍부한 예제를 살펴보고 싶은 독자
■ 마이바티스와 스프링 연동 웹 애플리케이션 구현을 원하는 독자
★ 이 책의 구성 ★
이 책은 크게 네 부분으로 나뉜다.
1부는 쉽고 체계적인 설명을 통해 초보 개발자라도 마이바티스 프로그래밍을 작성할 수 있도록 구성했다. 마이바티스의 아키텍처를 깊이 이해하고 있지 못하더라도 예제를 실습하다 보면 자연스럽게 마이바티스의 개발 패턴을 자연스럽게 익힐 수 있다.
1장, '마이바티스 소개'에서는 SQL 매퍼 프레임워크에 대한 개념과 단계적인 구현 과정을 통해 마이바티스를 소개한다.
2장, '마이바티스 프로그래밍 시작'에서는 간단한 마이바티스 프로그래밍을 구현하고, 발생 가능한 에러와 해결 방안을 살펴본다.
3장, '데이터 관리를 위한 마이바티스 프로그래밍'에서는 마이바티스 프로그래밍을 사용해서 데이터를 등록, 조회, 수정, 삭제하는 과정을 실습한다.
2부는 마이바티스 아키텍처를 자세하게 다룬다. 1부를 통해 마이바티스의 기본적인 사용법을 익혔더라도, 이를 충분히 이해하거나 활용하려면 마이바티스 내부 아키텍처를 살펴봐야 한다. 마이바티스가 내부적으로 어떻게 동작하는지 자세히 알아볼 수 있다.
4장, '마이바티스 설정'에서는 마이바티스 환경 설정에 필요한 구성 요소 및 속성을 살펴보고, 실무에 적용 가능한 예제를 실습한다.
5장, '마이바티스 매핑 구문 정의'에서는 마이바티스 매핑 구문 정의에 필요한 구성 요소와 속성을 살펴보고, 다양한 매핑 구문을 정의한다.
6장, '마이바티스 객체'에서는 마이바티스 객체 관계 및 다양한 API 사용법을 살펴본다.
3부는 마이바티스를 활용하는 기술에 대해 다룬다. 최적화된 웹 애플리케이션 계층을 구성을 안내하고, 마이바티스와 스프링 프레임워크를 연동하는 다양한 방법을 소개한다.
7장, '마이바티스와 웹 애플리케이션'에서는 웹 서비스 제공에 필요한 웹 애플리케이션 계층 구성을 설명한다.
8장, '마이바티스와 스프링 연동 웹 애플리케이션'에서는 마이바티스와 스프링을 연동한 웹 애플리케이션 구현 과정을 단계적으로 실습한다.
끝으로 4부는 부록으로, 이 책에서 제공하는 예제를 실습하는 데 필요한 개발 환경을 스스로 구축하는 방법, 유용한 마이바티스 편집기 설치 및 사용법, 아파치 Log4j2를 이용한 마이바티스 로깅 설정 및 구현, 다양한 마이바티스 서드파티 캐시 연동 설정 및 구현 방법을 제공한다.
부록 A, '마이바티스 프로그래밍 개발 환경 구축'에서는 자바 애플리케이션 개발 환경과 웹 애플리케이션 개발 환경을 나누어서 설명한다.
부록 B, '마이바티스 편집기'에서는 마이바티스 편집기 설치 및 사용법을 설명한다.
부록 C, '마이바티스 로깅'에서는 아파치 Log4j2 설치 및 사용법을 설명한다.
부록 D, '마이바티스 서드파티 캐시'에서는 다양한 마이바티스 서드파티 캐시 설치 및 설정을 설명한다.
목차
목차
1장. 마이바티스 소개
__1.1 SQL 매퍼 프레임워크 개념
__1.2 SQL 매퍼 프레임워크 구현
____1.2.1 중복된 기능 추출
____1.2.2 외부 파일 정의
____1.2.3 인자와 결과 자동 처리
____1.2.4 단순한 실행 메소드 정의
__1.3 마이바티스 소개
__1.4 마이바티스 프로젝트
__1.5 정리
2장. 마이바티스 프로그래밍 시작하기
__2.1 마이바티스 프로그래밍 개요
__2.2 간단한 마이바티스 프로그래밍
____2.2.1 마이바티스 매퍼 XML 파일 작성 (목록 조회 매핑 구문 정의)
____2.2.2 마이바티스 설정 XML 파일 작성
____2.2.3 실행 클래스 작성 (목록 조회 API 호출)
____2.2.4 실행 및 로깅 설정
__2.3 에러 발생 시 해결 방안
____2.3.1 마이바티스 매퍼 XML 파일 작성을 잘못한 경우
____2.3.2 마이바티스 설정 XML 파일 작성을 잘못한 경우
____2.3.3 실행 클래스 작성을 잘못한 경우
__2.4 정리
3장. 데이터 관리를 위한 마이바티스 프로그래밍
__3.1 데이터 관리 개요
__3.2 데이터 등록
____3.2.1 도메인 클래스 작성
____3.2.2 마이바티스 매퍼 XML 파일 작성 (등록 매핑 구문 정의)
____3.2.3 마이바티스 설정 XML 파일 작성
____3.2.4 실행 클래스 작성 (등록 API 호출)
____3.2.5 로깅 설정
____3.2.6 등록 실행
__3.3 데이터 조회
____3.3.1 마이바티스 매퍼 XML 파일 수정 (조회 매핑 구문 정의)
____3.3.2 실행 클래스 수정 (조회 API 호출)
____3.3.3 조회 실행
__3.4 데이터 수정
____3.4.1 마이바티스 매퍼 XML 파일 수정 (수정 매핑 구문 정의)
____3.4.2 실행 클래스 수정 (수정 API 호출)
____3.4.3 수정 실행
__3.5 데이터 삭제
____3.5.1 마이바티스 매퍼 XML 파일 수정 (삭제 매핑 구문 정의)
____3.5.2 실행 클래스 수정 (삭제 API 호출)
____3.5.3 수정 실행
__3.6 정리
2부. 심화
4장. 마이바티스 설정
__4.1 마이바티스 설정 개요
__4.2 사용자 설정이 반드시 필요한 구성 요소
____4.2.1 데이터 소스 구성 요소 《dataSource》
____4.2.2 트랜잭션 관리자 구성 요소 《transactionManager》
____4.2.3 환경 구성 요소 《environment》
____4.2.4 매퍼 구성 요소 《mapper》
__4.3 기본 설정이 제공되는 구성 요소
____4.3.1 셋팅 구성 요소 《setting》
____4.3.2 타입 에일리어스 구성 요소 《typeAlias》
____4.3.3 타입 핸들러 구성 요소 《typeHandler》
____4.3.4 오브젝트 팩토리 구성 요소 《objectFactory》
__4.4 알아두면 유용한 구성 요소
____4.4.1 프로퍼티 구성 요소 《property》
________4.4.1.1 내부 프로퍼티 설정
________4.4.1.2 프로퍼티 파일 설정
________4.4.1.3 프로퍼티 객체 설정
________4.4.1.4 프로퍼티 설정 우선 순위
____4.4.2 플러그인 구성 요소 《plugin》
____4.4.3 데이터베이스 아이디 프로바이더 구성 요소 《databaseIdProvider》
__4.5 정리
5장. 마이바티스 매핑 구문 정의
__5.1 마이바티스 매핑 구문 정의 개요
__5.2 인자와 결과를 지정하는 구성 요소
____5.2.1 파라미터 구성 요소 《parameterMap》
____5.2.2 리절트 구성 요소 《resultMap》
__5.3 매핑 구문 정의에 사용하는 구성 요소
____5.3.1 조회 구성 요소 《select》
____5.3.2 등록 구성 요소 《insert》
____5.3.3 수정 구성 요소 《update》
____5.3.4 삭제 구성 요소 《delete》
__5.4 동적 매핑 구문 생성에 사용하는 구성 요소
____5.4.1 조건 구성 요소 《if》
____5.4.2 선택 구성 요소 《choose》, 《when》, 《otherwise》
____5.4.3 복합 구성 요소 《where》, 《set》, 《trim》
____5.4.4 반복 구성 요소 《foreach》
__5.5 공통된 매핑 구문을 재사용하기 위한 구성 요소 《sql》, 《include》
__5.6 성능 향상과 관련된 구성 요소 《cache》, 《cache-ref》
__5.7 정리
6장. 마이바티스 객체
__6.1 마이바티스 객체 개요
__6.2 매핑 구문 실행에 사용하는 객체
____6.2.1 SqlSession 객체
____6.2.2 Mapper 객체
__6.3 매퍼 인터페이스
____6.3.1 조회 애노테이션 @Select
____6.3.2 등록 애노테이션 @Insert
____6.3.3 수정 애노테이션 @Update
____6.3.4 삭제 애노테이션 @Delete
__6.4 동적 매핑 구문 생성에 사용하는 객체
____6.4.1 SelectBuilder 객체
____6.4.2 SqlBuilder 객체
__6.5 쿼리문 직접 실행에 사용하는 객체
____6.5.1 SqlRunner 객체
____6.5.2 ScriptRunner 객체
__6.6 정리
3부. 응용
7장. 마이바티스와 웹 애플리케이션
__7.1 자바 애플리케이션 계층 구성
__7.2 웹 애플리케이션 계층 구성
__7.3 정리
8장. 마이바티스와 스프링 연동 웹 애플리케이션
__8.1 마이바티스-스프링 연동 웹 애플리케이션 개요
__8.2 SqlSessionTemplate 객체를 사용한 방식
____8.2.1 프로젝트 구성
____8.2.2 가게 목록 조회
________8.2.2.1 도메인 클래스 작성 (1/9 단계)
________8.2.2.2 컨트롤러 클래스 작성 (2/9 단계)
________8.2.2.3 스프링 설정 XML 파일 작성 (3/9 단계)
________8.2.2.4 배포 서술자 파일 수정 (4/9 단계)
________8.2.2.5 웹 애플리케이션 실행 (5/9 단계)
________8.2.2.6 서비스 인터페이스와 서비스 클래스 작성 (6/9 단계)
________8.2.2.7 데이터 접근 인터페이스와 데이터 접근 클래스 작성 (7/9 단계)
________8.2.2.8 SqlSessionTemplate 객체 등록 (8/9 단계)
________8.2.2.9 SqlSessionTemplate 객체 활성화 (9/9 단계)
____8.2.3 가게 등록
________8.2.3.1 컨트롤러 클래스 수정 (1/4 단계)
________8.2.3.2 서비스 인터페이스와 서비스 클래스 수정 (2/4 단계)
________8.2.3.3 데이터 접근 인터페이스와 데이터 접근 클래스 수정 (3/4 단계)
________8.2.3.4 마이바티스 매퍼 XML 파일 수정 (4/4 단계)
____8.2.4 가게 조회
________8.2.4.1 컨트롤러 클래스 수정 (1/4 단계)
________8.2.4.2 서비스 인터페이스와 서비스 클래스 수정 (2/4 단계)
________8.2.4.3 데이터 접근 인터페이스와 데이터 접근 클래스 수정 (3/4 단계)
________8.2.4.4 마이바티스 매퍼 XML 파일 수정 (4/4 단계)
____8.2.5 가게 수정
________8.2.5.1 컨트롤러 클래스 수정 (1/4 단계)
________8.2.5.2 서비스 인터페이스와 서비스 클래스 수정 (2/4 단계)
________8.2.5.3 데이터 접근 인터페이스와 데이터 접근 클래스 수정 (3/4 단계)
________8.2.5.4 마이바티스 매퍼 XML 파일 수정 (4/4 단계)
____8.2.6 가게 삭제
________8.2.6.1 컨트롤러 클래스 수정 (1/4 단계)
________8.2.6.2 서비스 인터페이스와 서비스 클래스 수정 (2/4 단계)
________8.2.6.3 데이터 접근 인터페이스와 데이터 접근 클래스 수정 (3/4 단계)
________8.2.6.4 마이바티스 매퍼 XML 파일 수정 (4/4 단계)
__8.3 SqlSessionDaoSupport 객체를 사용한 방식
__8.4 자동 매핑 방식
__8.5 정리
4부. 부록
부록 A. 마이바티스 프로그래밍 개발 환경 구축
__A.1 마이바티스 프로그래밍 개발 환경 구축 개요
__A.2 자바 애플리케이션 개발 환경
____A.2.1 데이터베이스 설치 (1/5 단계)
____A.2.2 자바 설치 (2/5 단계)
____A.2.3 라이브러리 다운로드 (3/5 단계)
____A.2.4 이클립스 설치 (4/5 단계)
____A.2.5 자바 프로젝트 생성 (5/5 단계)
__A.3 웹 애플리케이션 개발 환경
____A.3.1 라이브러리 다운로드 (1/3 단계)
____A.3.2 다이나믹 웹 프로젝트 생성 (2/3 단계)
____A.3.3 아파치 톰캣 설치 (3/3 단계)
부록 B. 마이바티스 편집기
__B.1 마이바티스 편집기 설치
__B.2 mybatiseditor 편집기 사용
__B.2 MyBatipse 편집기 사용
부록 C. 마이바티스 로깅
__C.1 마이바티스 로그 팩토리
__C.2 아파치 Log4j2 설치 및 설정
부록 D. 마이바티스 서드파티 캐시
__D.1 마이바티스 서드파티 캐시 개요
__D.2 Ehcache 캐시 연동
__D.3 Hazelcast 캐시 연동
__D.4 Memcached 캐시 연동
__D.5 OSCache 캐시 연동
저자
저자
Your payment information is processed securely. We do not store credit card details nor have access to your credit card information.

