mybatis-spring整合总结02_SqlSessionFactoryBean

SqlSessionFactoryBean

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

为了得到factory bean,如上节所示,需在Spring XML中配置:
Java代码 收藏代码
  1. <beanid="sqlSessionFactory"class="org.mybatis.spring.SqlSessionFactoryBean">
  2. <propertyname="dataSource"ref="dataSource"/>
  3. </bean>

SqlSessionFactoryBean实现了Spring的FactoryBean接口。这意味着Spring最终返回的不是SqlSessionFactoryBean而是作为factory 的getObject()方法返回的Object。这相当于下面的java代码:
Java代码 收藏代码
  1. SqlSessionFactoryBeanfactoryBean=newSqlSessionFactoryBean();
  2. SqlSessionFactorysessionFactory=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. <beanid="sqlSessionFactory"class="org.mybatis.spring.SqlSessionFactoryBean">
  2. <propertyname="dataSource"ref="dataSource"/>
  3. <propertyname="mapperLocations"value="classpath*:sample/config/mappers/**/*.xml"/>
  4. </bean>

你可能感兴趣的:(sessionFactory)