102. XML 없이 SqlSessionFactory 만들기

2012. 4. 17. 11:37공부/MYBATIS

XML보다 Java 코드로 직접 설정하는 것을 좋아한다던가, 너만의 설정을 통해 생성하고 싶다면, mybatis는 XML과 똑같은 설정을 제공하는 완벽한 Configuration 클래스를 제공하니까 그렇게 해도 돼.

DataSource dataSource = BlogDataSourceFactory.getBlogDataSource();
TransactionFactory transactionFactory = new JdbcTransactionFactory();
Environment environment = new Environment("development", transactionFactory, dataSource);
Configuration configuration = new Configuration(environment);
configuration.addMapper(BlogMapper.class);
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(configuration);

이 경우에는 mapper class를 추가하는 설정에 주목해야지. Mapper classes 는 XML이 필요하지 않도록 하기 위한 SQL Mapping annotations를 포함한 자바 클래스들이야. 그러나, 몇몇 java annotation과 몇몇 mybatis mapping의 복잡도 때문에 상세한 mapping을 위해서는 여전히 XML mapping이 필요해.. 뭐 예를 들면 nested join mapping 같은거.. 이런 이유때문에 mybatis는 스스로 XML 파일이 있는지 찾아보고 그게 있다면 로드해. ( 이경우,클래스패스와 blogMapper.class 의 이름에 기인해서  BlogMapper.xml 이 로드될겨 )  자세한건 뒤에 또 얘기할께


출처 : http://www.mybatis.org/core/getting-started.html