SqlSessionFactory 객체가 마이바티스의 전반적인 정보를 가지고 제어한다.
SqlSessionFactory 객체를 생성하기 위해 SqlSessionFactotybuilder 객체를 먼저 생성한다.
SqlSessionFactory 객체는 SqlSessionFactoryBuilder 의 Build 메소드를 생성한다.
SqlSessionFactory 객체가 마이바티스의 전반적인 정보를 갖는 특성으로 인해 이객체는
애플리케이션 내에서 한 개만 생성돼야 한다.
SqlSessionFactory를 실행할때마다 생성한다는 것은 매번 설정파일을 읽고 파싱하고
객체를 생성한 다는 뜻이다.
대개의 애플리케이션에서는 성능에 영향을 줄수 있다.
SqlSessionFactory 객체를 매번 생성하는 것은 간다한 테스트용 애플리케이션이나 배치 작업을
처리하는 경우에나 사용해야 하는 방법이다.
마이바티스는 실행후 여러 가지 정보를 SqlSessionFactory 객체에 저장하기 때문에 매번
생성할 경우 실행 이력과 같은 정보가 없어 일부기능을 제대로 사용하지 못한다.
대표적인 것이 캐시다. 캐시는 이전에 실행한 내용을 캐시라는 메모리 영역에 저장하고
다음 실행시 동일한 조건일 때 데이터베이스에서 가져오지 않고 캐시영역에 있는 데이터를
재사용하는 것이다.
SqlSessionFactory 객체를 매번 생성하면 이전에 실행한 내용을 저장할수 없어
캐시를 사용하지 않겠다는 것과 같다.
설정파일을 로드해 SqlSessionFactory 객체를 생성하는 것으로 JDBC 코드의 데이터베이스
연결 객체를 생성한 것과 유사한 작업을 한셈이다. 이제남은 작업은 데이터 베이스에 SQL을
실행해 데이터를 다루는 것이다.
'개발 > DB' 카테고리의 다른 글
마이바티스 라이브러리 (0) | 2013.11.26 |
---|---|
마이바티스 조회결과 자바 객체에 설정(결과 맵핑) (0) | 2013.11.26 |
괜찮은 ERD 프로그램 [eXERD] (0) | 2013.10.28 |
마이바티스(mybatis) 연동 모듈 (0) | 2013.10.23 |
IBATIS 리스트를 Iterator 받는방법 (0) | 2013.10.23 |
댓글