SqlSessionFactoryBean
在Mybatis中,SqlSessionFactoryBuilder用于创建SqlSessionFactory。而在Mybatis-Spring中SqlSessionFactoryBean将取而代之。
为了得到factory bean,如上节所示,需在Spring XML中配置:
- <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
- <property name="dataSource" ref="dataSource" />
- </bean>
SqlSessionFactoryBean实现了Spring的FactoryBean接口。这意味着Spring最终返回的不是SqlSessionFactoryBean而是作为factory 的getObject()方法返回的Object。这相当于下面的java代码:
- SqlSessionFactoryBean factoryBean = new SqlSessionFactoryBean();
- 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文件位置。是可选项。例如:
- <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
- <property name="dataSource" ref="dataSource" />
- <property name="mapperLocations" value="classpath*:sample/config/mappers/**/*.xml" />
- </bean>
本文介绍了如何在Mybatis-Spring中使用SqlSessionFactoryBean来替代SqlSessionFactoryBuilder进行数据库操作。主要内容包括配置DataSource、指定mybatis配置文件位置及Mapper文件位置等。



920

被折叠的 条评论
为什么被折叠?



