mybatis-spring整合总结02_SqlSessionFactoryBean

SqlSessionFactoryBean


在Mybatis中,SqlSessionFactoryBuilder用于创建SqlSessionFactory。而在Mybatis-Spring中SqlSessionFactoryBean将取而代之。

为了得到factory bean,如上节所示,需在Spring XML中配置:

Java代码 复制代码  收藏代码
  1. <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">   
  2. <property name="dataSource" ref="dataSource" />   
  3. </bean>  


SqlSessionFactoryBean实现了Spring的FactoryBean接口。这意味着Spring最终返回的不是SqlSessionFactoryBean而是作为factory 的getObject()方法返回的Object。这相当于下面的java代码:

Java代码 复制代码  收藏代码
  1. SqlSessionFactoryBean factoryBean = new SqlSessionFactoryBean();   
  2. SqlSessionFactory sessionFactory = factoryBean.getObject();  



SqlSessionFactory的属性
1. dataSource,SqlSessionFactory有一个必须的属性,即JDBC DataSource,这个DataSource可一个任何符合Spring配置的DataSource。
2. configLocation,用于指明mybatis的XML配置文件的位置。此配置文件并不一定是完整的,比如environments,datasource,transaction都可以忽略(由SqlSessionFactoryBean自己配置)
3. mapperLocations,用于指明一组XML Mapper文件位置。是可选项。例如:

Java代码 复制代码  收藏代码
  1. <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">   
  2. <property name="dataSource" ref="dataSource" />   
  3. <property name="mapperLocations" value="classpath*:sample/config/mappers/**/*.xml" />   
  4. </bean>  

你可能感兴趣的:(sessionFactory)