小概:
ssm整合时,是配置DataSource,SqlSessionFactoryBean,MapperScannerConfigurer,
springboot整合同原理,配置这三样
接下来我们分析一下中间有什么
ssm
1.datasource,配置数据源
2.SqlSessionFactoryBean 引入datasource 和 引入mybatis-config 和 引入mapperLocations 引入xml文件
3.MapperScannerConfigurer 引入要生成映射器的mapper包
springboot
1.datasource,配置数据源
2.SqlSessionFactoryBean 引入datasource 和 起别名
3.MapperScannerConfigurer 引入sqlSessionFactoryBean 和 引入要生成映射器的mapper包
接下来我们开始操作(mybatis-spring方式)
1.引入依赖
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jdbc</artifactId> </dependency> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis-spring</artifactId> <version>2.0.1</version> </dependency> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.5.1</version> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> </dependency>
2.编写配置类,DataSource,SqlSessionFactoryBean和MapperScannerConfigurer
DataSource
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver spring.datasource.url=jdbc:mysql://127.0.0.1:3306/Test?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=UTC&zeroDateTimeBehavior=convertToNull spring.datasource.username=root spring.datasource.password=1234
SqlSessionFactoryBean
@Configuration public class DataSourceUtil { @Resource private DataSource dataSource; @Bean public SqlSessionFactory sqlSessionFactoryBean(){ SqlSessionFactoryBean sqlSessionFactoryBean=new SqlSessionFactoryBean(); try { sqlSessionFactoryBean.setDataSource(dataSource); sqlSessionFactoryBean.setTypeAliasesPackage("com.bjit.sql.entity"); return sqlSessionFactoryBean.getObject(); } catch (Exception e) { e.printStackTrace(); throw new RuntimeException(); } } }
MapperScannerConfigurer
@Configuration //变成配置类 public class MybatisConf { @Bean //通过bean注解返回Bean对象实例 public MapperScannerConfigurer mapperScannerConfigurer(){ MapperScannerConfigurer mapperScannerConfigurer=new MapperScannerConfigurer(); //引入bean实例 mapperScannerConfigurer.setSqlSessionFactoryBeanName("sqlSessionFactoryBean"); //引入要生成映射器的mapper包 mapperScannerConfigurer.setBasePackage("com.bjit.sql.mapper"); return mapperScannerConfigurer; } }
接下来我们就完成了第一种整合方式