<!--1、扫描数据库的配置文件:database.properties-->
<context:property-placeholder location="classpath:database.properties"/>
<!--2、配置数据源:DataSource-->
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
<!--读取数据库配置文件-->
<property name="driverClassName" value="${driver}"/>
<property name="url" value="${url}"/>
<property name="username" value="${user}"/>
<property name="password" value="${pwd}"/>
</bean>
<!--3、注册SqlSessionFactory对象-->
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<!--注入数据源对象-->
<property name="dataSource" ref="dataSource"/>
<!--读取mybatis配置文件-->
<property name="configLocation" value="classpath:mybatis-config.xml"/>
<!--配置Sql映射文件 dao/*/*.xml:dao包下的所有子包,子包中的所有的xml文件-->
<property name="mapperLocations" value="classpath:smbms/dao/*/*.xml"/>
</bean>
<!--4.1、注册Mapper接口的实现类对象
相当于sqlSession.getMapper(Mapper.Class)-->
<bean id="userMapper" class="org.mybatis.spring.mapper.MapperFactoryBean">
<!--注入一个mapper接口的全类名-->
<property name="mapperInterface" value="smbms.dao.user.UserMapper"/>
<!--注入一个sqlSessionFactory-->
<property name="sqlSessionFactory" ref="sqlSessionFactory"/>
</bean>
<!--4.2 自动扫描基准包,批量的、自动的生成Mapper对象
Spring自动创建所有Mapper接口的实现类,并创建实现类的对象,并自动添加注解@Repository
Mapper接口实现类对象的名字默认的为首字母小写的接口名
比如USerMapper接口实现类的名字就式 userMapper-->
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<!--注入一个sqlSessionFactory-->
<property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"/>
<!--自动扫描所有Mapper接口所在的基准包-->
<property name="basePackage" value="smbms.dao"/>
</bean>
<!--用注解的方式来装配,扫描基准包-->
<context:component-scan base-package="smbms.service"/>