EasymybatisConfig类里面存放一些配置参数,这些参数都有默认值,通常状况下能够不用。EasymybatisConfig的使用方法也很简单,spring普通注入一个就好了。java
mybatis.config-location=classpath:mybatis/mybatisConfig.xml mybatis.mapper-locations=classpath:mybatis/mapper/*.xml mybatis.camel2underline=true mybatis.common-sql-classpath=xx mybatis.mapper-save-dir=d:/mapper
@Bean(name = sqlSessionFactoryName) public SqlSessionFactoryBean sqlSessionFactoryBean(@Autowired DataSource dataSource) throws Exception { SqlSessionFactoryBeanExt bean = new SqlSessionFactoryBeanExt(); bean.setDataSource(dataSource); bean.setConfigLocation(this.getResource(mybatisConfigLocation)); bean.setMapperLocations(this.getResources(mybatisMapperLocations)); // ====如下是附加属性==== // dao所在的包名,跟MapperScannerConfigurer的basePackage一致,多个用;隔开 bean.setBasePackage(basePackage); bean.setConfig(getConfig()); return bean; } public EasymybatisConfig getConfig() { EasymybatisConfig config = new EasymybatisConfig(); config.setXXX(); ... return config; }
<bean id="sqlSessionFactory" class="net.oschina.durcframework.easymybatis.ext.SqlSessionFactoryBeanExt"> <property name="dataSource" ref="dataSource" /> <property name="configLocation"> <value>classpath:mybatis/mybatisConfig.xml</value> </property> <property name="mapperLocations"> <list> <value>classpath:mybatis/mapper/*.xml</value> </list> </property> <!-- 如下是附加属性 --> <!-- dao所在的包名,跟MapperScannerConfigurer的basePackage一致 多个用;隔开 --> <property name="basePackage" value="com.myapp.dao" /> <property name="config"> <bean class="net.oschina.durcframework.easymybatis.EasymybatisConfig"> <property name="属性名" value="属性值"/> </bean> </property> </bean>
下面就讲解下各个属性的做用:spring
若是为true,则开启驼峰转换下划线功能。实体类中的java字段映射成数据库字段将自动转成下划线形式。能够省略@Column注解。默认true。sql
mapper处理线程数,此项配置能够加快启动速度。默认值50。数据库
指定模板文件class路径。若是没有指定,则默认读取easymybatis/tpl/下的模板,通常状况下不作配置。springboot
指定公共SQL模块class路径,若是没有指定,则默认读取easymybatis/commonSql.xml,通常状况下不作配置。mybatis
指定mapper文件存放路径。由于easymybatis是直接将mapper内容注入到内存当中,开发人员无感知,而且不知道mapper内容是什么样子,这个功能就是让开发人员可以查看到对应的mapper内容,方便定位和排查问题。通常状况下此项不用开启。app