Spring-boot添加Mybatis

在Spring-boot里添加Mybatis需要添加

<dependency>
	<groupId>org.mybatis.spring.boot</groupId>
	<artifactId>mybatis-spring-boot-starter</artifactId>
	<version>1.1.1</version>
</dependency>

然后在配置类上添加MapperScan注解,自动扫描mapper接口

@MapperScan("package-info")

需要事务管理的话可以添加 @EnableTransactionManagement 注解,spring自动会配置事务

 

然后必须手动配置 Mybatis 的 SqlSessionFactory

    @Bean
	public SqlSessionFactory sqlSessionFactoryBean(DataSource ds) throws Exception {
		SqlSessionFactoryBean sqlSessionFactoryBean = new SqlSessionFactoryBean();
		// 设置数据源
		sqlSessionFactoryBean.setDataSource(ds);
		// 设置查找器
		PathMatchingResourcePatternResolver resolver = new PathMatchingResourcePatternResolver();
		// 自动扫描mybatis文件
		sqlSessionFactoryBean.setMapperLocations(resolver.getResources("classpath:/mybatis/*.xml"));
		return sqlSessionFactoryBean.getObject();
	}

Spring会自动注入DataSource

然后在application.properties里添加DataSource信息

配置信息如下 : 

# DataSource
spring.datasource.url = jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull
spring.datasource.username = root
spring.datasource.password = root
spring.datasource.driverClassName = com.mysql.jdbc.Driver
# JDBC Pool
spring.datasource.poolName = hikariCP
spring.datasource.maximumPoolSize = 25
spring.datasource.minimumIdle = 3
spring.datasource.connectionTimeout = 30000
spring.datasource.idleTimeout = 30000
spring.datasource.pool-prepared-statements = true
spring.datasource.max-open-prepared-statements = 250

默认是用Tomcat 连接池 

如果想使用HikariCP的话 在引用 spring-boot-starter-jdbc时排除tomcat-jdbc就好了

pom文件如下:

    <dependency>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter-jdbc</artifactId>
		<exclusions>
			<exclusion>
				<!-- 取消引入tomcat jdbc -->
				<groupId>org.apache.tomcat</groupId>
				<artifactId>tomcat-jdbc</artifactId>
			</exclusion>
		</exclusions>
	</dependency>
    <!--引入 HikariCP-->
	<dependency>
		    <groupId>com.zaxxer</groupId>
			<artifactId>HikariCP</artifactId>
	</dependency>

 

你可能感兴趣的:(Spring-boot添加Mybatis)