1.新建一個配置類,加上configuration注解
2.定制化SqlSessionFactoryBean,然后交給容器管理
代碼如下:
1 @Configuration 2 public class MybatisConfig { 3 4 @Value("${mybatis.mapper-locations}") 5 private String mapperLocations; 6 7 @Bean 8 public SqlSessionFactoryBean configSqlSessionFactoryBean(DataSource dataSource) throws IOException { 9 SqlSessionFactoryBean sqlSessionFactoryBean = new SqlSessionFactoryBean(); 10 org.apache.ibatis.session.Configuration configuration = new org.apache.ibatis.session.Configuration(); 11 // configuration.setLogImpl(StdOutImpl.class);//標准輸出日志 12 configuration.setLogImpl(NoLoggingImpl.class);// 不輸出日志() 13 configuration.setMapUnderscoreToCamelCase(true);// 開啟駝峰命名 14 configuration.setCallSettersOnNulls(true);// 開啟在屬性為null也調用setter方法 15 16 sqlSessionFactoryBean.setConfiguration(configuration); 17 sqlSessionFactoryBean.setDataSource(dataSource); 18 ResourcePatternResolver resolver = new PathMatchingResourcePatternResolver(); 19 sqlSessionFactoryBean.setMapperLocations(resolver.getResources(mapperLocations));// 設置mapper文件掃描路徑 20 return sqlSessionFactoryBean; 21 }
以上配置也可以通過properties文件配置,如:
1 mybatis.mapper-locations=classpath:mapper/*.xml 2 mybatis.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl 3 mybatis.configuration.mapUnderscoreToCamelCase=true
4 mybatis.configuration.call-setters-on-nulls=true