欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

applicationContext配置---MyBatis

程序员文章站 2022-05-25 10:30:38
...
<!--组件扫描-->
<context:component-scan base-package="*.*.ssm"></context:component-scan>
<!--第一步dataSource  第二步sqlSessionFactory  第三步MapperFactoryBean  -->
<!--创建数据源-->
<context:property-placeholder location="classpath:datasource.properties"></context:property-placeholder>
<!--读取dataSource文件-->
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
    <property name="url" value="${jdbc.url}"></property>
    <property name="username" value="${jdbc.username}"></property>
    <property name="password" value="${jdbc.password}"></property>
    <property name="driverClassName" value="${jdbc.driver}"></property>
</bean>
<!--自动注入数据源-->
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"></bean>
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
    <property name="basePackage" value="*.*.ssm.dao"></property>
</bean>
<!--MapperScannerConfigurer通过id注入到SqlSessionFactoryBean中-->
    第一种
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
    <!--指定具有sql映射的dao包 如果注释这行 , 就需要使用下面的单一注入-->
    <!--运行时才会注入,所有自动注入会报错,单一注入不会报错,他是先注入-->
    <property name="basePackage" value="com.xsh131.ssm.dao"></property>
</bean>

第二中方式
单一注入
自动依赖sqlSessionFactory
MapperFactoryBean对BanJiDao接口做一个实现类对象,叫banJiDao,就会注入到impl中
单个注入,有几个dao就需要注入几个
<bean id="banJiDao" class="org.mybatis.spring.mapper.MapperFactoryBean">
    <property name="mapperInterface" value="*.*.ssm.dao.BanJiDao"></property>
</bean>