MyBatis

자바 오브젝트와 SQL 사이의 자동매핑기능 지원하는 ORM(Object Relational Mapping) framework

KakaoTalk_20220720_123221814

  • SQL 을 별도의 파일로 분리해서 관리(SQL 그대로 이용)
  • JDBC 코드 작성의 불편함 제거

  • MyBaits가 JDBC API 를 감싸서 개발자가 조금더 편리하게 접근할 수 있도록 도와줌
  • Data Access Layer 에서 사용하는 프레임워크
  • Controller 에서 Service 호출하고 Service 가 Dao의 메서드 호출하면 Dao에서 myBatis 를 호출

MyBaits 의 주요 컴포넌트

  • maBatis 설정파일(config.xml) : DB의 접속주소 정보나 mapping파일 경로 등 고정된 환경정보 설정
  • SqlSession Factory Builder : myBatis 설정파일을 바탕으로 SqlSessionFactory 생성
  • SqlSession Factory : SqlSession 생성
  • SqlSession : SQL 실행, 트랜잭션 관리 (핵심적인 역할을 하는 클래스)

KakaoTalk_20220720_123231332

Application 에서 SqlSession Factory Builder 호출
-> config file 읽고 Factory 생성
-> 개발자가 메서드 호출하면 SqlSession Factory가 SqlSession 생성
-> SqlSession이 개발자가 작성한 SQL문 호출
-> 개발자가 작성한 Application 반환

MyBatis 비교연산자

  • 부등호(>,<,& 등) 사용하면 에러발생
  • 해결방법
    1. <![ CDATA]]>
    2. 기호사용 1) < : &lt; 2) > : &gt;

업데이트: