Mybatis整合Springspring
根據官方的說法,在ibatis3,也就是Mybatis3問世以前,Spring3的開發工做就已經完成了,因此Spring3中仍是沒有對Mybatis3的支持。sql
所以由Mybatis社區本身開發了一個Mybatis-Spring用來知足Mybatis用戶整合Spring的需求。下面就將經過Mybatis-Spring來整合Mybatis跟數據庫
Spring的用法作一個簡單的介紹數組
首先,咱們須要從Mybatis官網上下載Mybatis-Spring的jar包添加到咱們項目的類路徑下,固然也須要添加Mybatis的相關jar包和Spring的mybatis
相關jar包。咱們知道在Mybatis的全部操做都是基於一個SqlSession的,而SqlSession是由SqlSessionFactory來產生的,SqlSessionFactory又app
是由SqlSessionFactoryBuilder來生成的。可是Mybatis-Spring是基於SqlSessionFactoryBean的。在使用Mybatis-Spring的時候,咱們也須要ui
SqlSession,並且這個SqlSession是內嵌在程序中的,通常不須要咱們直接訪問。SqlSession也是由SqlSessionFactory來產生的,可是Mybatis-Springspa
給咱們封裝了一個SqlSessionFactoryBean,在這個bean裏面仍是經過SqlSessionFactoryBuilder來創建對應的SqlSessionFactory,進而獲取到對應的code
SqlSession。經過SqlSessionFactoryBean咱們能夠經過對其指定一些屬性來提供Mybatis的一些配置信息。因此接下來咱們須要在Spring的applicationContextxml
配置文件中定義一個SqlSessionFactoryBean
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <property name="dataSource" ref="dataSource" /> <property name="mapperLocations" value="classpath:com/tiantian/ckeditor/mybatis/mappers/*Mapper.xml" /> <property name="typeAliasesPackage" value="com.tiantian.ckeditor.model" /> </bean>
在定義SqlSessionFactoryBean的時候,dataSource屬性是必須指定的,它表示用於鏈接數據庫的數據源。固然,咱們也能夠指定一些其餘的屬性,下面簡單列舉幾個:
<property name="typeAliases"> <array> <value>com.tiantian.mybatis.model.Blog</value> <value>com.tiantian.mybatis.model.Comment</value> </array> </property>