核心就是如何获取SqlSessionFactory对象,然后就可以通过SqlSessionFactory对象获得SqlSession对象,最后就可以
用getMapper("")获取映射接口。
springIOC可以管理SqlSessionFactory对象。
一:使用mybatis-config.xml文件
mybatis-config.xml文件照旧,里面配置了数据库源,以及指定了sql映射文件。
在配置了SqlSessionFactory对象的xml文件会用到mybatis-config.xml
<!-- 配置sqlSessionFactory 使用mybatis-config.xml--> <!-- 直接读取mybatis-config.xml文件,里面和之前配置的一样 --> <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <property name="configLocation" value="classpath:mybatis-config.xml"/> </bean> <!-- 自动扫描映射接口所在的包 --> <!-- 将来可以通过接口的名字首字母小写作为beanName,从spring容器中拿出自动生成的该接口的实现类 --> <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"> <property name="basePackage" value="com.cnlogs.mapper" /> </bean>
二:不使用mybatis-config.xml文件
<context:property-placeholder location="classpath:db.perperties" system-properties-mode="FALLBACK" /> <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> <property name="driverClassName"> <value>${jdbc.driverClassName}</value> </property> <property name="url"> <value>${jdbc.url}</value> </property> <property name="username"> <value>${jdbc.username}</value> </property> <property name="password"> <value>${jdbc.password}</value> </property> </bean> <!-- 配置sqlSessionFactory 不使用mybatis-config.xml--> <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <property name="dataSource" ref="dataSource" /> <property name="typeAliasesPackage" value="com.briup.db"></property> <property name="configurationProperties"> <props> <prop key="cacheEnabled">true</prop> </props> </property> <!-- 自动扫描mapping.xml文件 --> <property name="mapperLocations" value="classpath:com/cnblogs/mapper/xxx.xml" /> </bean>