mybatis-spring官方中文教程文档

来源:互联网 发布:最新淘宝客服用语大全 编辑:程序博客网 时间:2024/06/15 18:42

一、mybatis-spring

二、配置文件

<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource" /> 
</bean>


<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close" lazy-init="default">
<property name="driverClass" value="com.mysql.jdbc.Driver" /> 
<property name="jdbcUrl" value="${jdbc.url}" /> 
<property name="user" value="${jdbc.user}" /> 
<property name="password" value="${jdbc.password}" /> 
<property name="minPoolSize" value="3" /> 
<property name="maxPoolSize" value="20" /> 
<property name="maxIdleTime" value="1800" /> 
<property name="acquireIncrement" value="2" />
<property name="maxStatements" value="0" />
<property name="initialPoolSize" value="4" />
<property name="idleConnectionTestPeriod" value="1800" />
<property name="acquireRetryAttempts" value="30" />
<property name="breakAfterAcquireFailure" value="false" />
<property name="testConnectionOnCheckout" value="false" />
</bean>


<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
  <property name="dataSource" ref="dataSource" />
  <property name="configLocation" ref="classpath:mybatis-config.xml" />
  <property name="mapperLocations">
<list>
<value>classpath*:mapper/**/*Mapper.xml</value>
</list>
  </property>
</bean>


<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
  <property name="basePackage" ref="com.demo.dao.mapper" />
</bean>

三、MapperScannerConfigurer

MyBatis的一大亮点就是可以不用DAO的实现类。如果没有实现类,Spring如何为Service注入DAO的实例呢?MyBatis-Spring提供了一个MapperFactoryBean,可以将数据映射接口转为Spring Bean。

  1. <bean id="userDao" class="org.mybatis.spring.mapper.MapperFactoryBean">  
  2.   <property name="mapperInterface" value="dao.UserMapper"/>  
  3.   <property name="sqlSessionFactory" ref="sqlSessionFactory"/>  
  4. </bean>  

如果数据映射接口很多的话,需要在Spring的配置文件中对数据映射接口做配置,相应的配置项会很多了。为了简化配置,在MyBatis-Spring中提供了一个转换器MapperScannerConfig它可以将接口转换为Spring容器中的Bean,在Service中@Autowired的方法直接注入接口实例。在Spring的配置文件中可以采用以下所示的配置将接口转化为Bean。

原创粉丝点击