Spring配置文件中
<!-- MyBatis配置 -->
<bean id="sessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="configLocation" value="classpath:config/mybatis.cfg.xml"/>
<property name="dataSource" ref="dataSource" />
</bean>
<bean id="baseMapper" class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="basePackage" value="xiaoyou.dao.impl" />
<property name="sqlSessionFactoryBeanName" value="sessionFactory"/>
</bean>
mybatis.cfg.xml:
1 <?xml version="1.0" encoding="UTF-8" ?> 2 <!DOCTYPE configuration 3 PUBLIC "-//ibatis.apache.org//DTD Config 3.0//EN" 4 "http://ibatis.apache.org/dtd/ibatis-3-config.dtd"> 5 <configuration> 6 <settings> 7 <!-- 这个配置使全局的映射器启用或禁用缓存 --> 8 9 <setting name="cacheEnabled" value="true"/> 10 11 <!-- 全局启用或禁用延迟加载。当禁用时,所有关联对象都会即时加载 --> 12 13 <setting name="lazyLoadingEnabled" value="false"/> 14 15 <!-- 当启用时,有延迟加载属性的对象在被调用时将会完全加载任意属性。否则,每种属性将会按需要加载 --> 16 17 <setting name="aggressiveLazyLoading" value="false"/> 18 19 <!-- 允许或不允许多种结果集从一个单独的语句中返回(需要适合的驱动) --> 20 21 <setting name="multipleResultSetsEnabled" value="true"/> 22 23 <!-- 使用列标签代替列名。不同的驱动在这方便表现不同。参考驱动文档或充分测试两种方法来决定所使用的驱动 --> 24 25 <setting name="useColumnLabel" value="true"/> 26 27 <!-- 允许JDBC支持生成的键。需要适合的驱动。如果设置为true则这个设置强制生成的键被使用,尽管一些驱动拒绝兼容但仍然有效(比如Derby) --> 28 29 <setting name="useGeneratedKeys" value="true"/> 30 31 <!-- 指定MyBatis如何自动映射列到字段/属性。PARTIAL只会自动映射简单,没有嵌套的结果。FULL会自动映射任意复杂的结果(嵌套的或其他情况) --> 32 33 <setting name="autoMappingBehavior" value="PARTIAL"/> 34 35 <!-- 配置默认的执行器。SIMPLE执行器没有什么特别之处。REUSE执行器重用预处理语句。BATCH执行器重用语句和批量更新 --> 36 37 <setting name="defaultExecutorType" value="SIMPLE"/> 38 39 <!-- 设置超时时间,它决定驱动等待一个数据库响应的时间 --> 40 41 <setting name="defaultStatementTimeout" value="2000"/> 42 <setting name="logImpl" value="LOG4J" /> 43 </settings> 44 </configuration>
原文:http://www.cnblogs.com/dobestself-994395/p/4381427.html