spring boot2.1.1整合mybatis&Druid连接池

环境

idea 2019
jdk1.8
maven3.6
spring boot2.1.1(目前springboot最高版本为2.1.8情况下,2.0以上测试过几个版本都可正常运行)
项目类型:jar

注意:spring boot自动配置的前提是>>所有组件都在核心启动类所在包及其子包下,所以本篇所有java类都是在核心类所在包及其子包下创建。

导入依赖

 		<dependency>
            <groupId>org.springframework.bootgroupId>
            <artifactId>spring-boot-starter-jdbcartifactId>
        dependency>
        <dependency>
            <groupId>org.springframework.bootgroupId>
            <artifactId>spring-boot-starter-webartifactId>
        dependency>
        <dependency>
            <groupId>org.mybatis.spring.bootgroupId>
            <artifactId>mybatis-spring-boot-starterartifactId>
            <version>2.1.0version>
        dependency>

        <dependency>
            <groupId>mysqlgroupId>
            <artifactId>mysql-connector-javaartifactId>
            <version>5.1.47version>
            <scope>runtimescope>
        dependency>
        <dependency>
            <groupId>com.alibabagroupId>
            <artifactId>druidartifactId>
            <version>1.1.17version>
        dependency>

在核心配置文件中配置Druid数据源

spring:
  datasource:
    driver-class-name: com.mysql.jdbc.Driver # 数据库驱动
    url: jdbc:mysql://localhost:3306/test # url
    username: root # 账号
    password: 159357 # 密码
    type: com.alibaba.druid.pool.DruidDataSource # 数据源类型,这里指定为Druid数据源

注解开发:

1,在持久层接口上添加@Mapper接口

2,也可以在配置类上添加@MapperScan(“com.wn.demo.springboot.mapper”)注解,开启自动扫描,参数为包名

XML开发:

在核心配置文件中添加对应配置

# mybatis配置文件位置
mybatis:
  # 指定mybatis核心配置文件
  config-location: classpath:mybatis/mybatis-config.xml
  # 指定mybatis mapper配置文件
  mapper-locations: classpath:mybatis/mapper/*.xml

配置驼峰命名法的两种方式:

在核心配置文件中开启

mybatis:
  configuration:
    map-underscore-to-camel-case: true

通过自定义ConfigurationCustomizer配置,添加如下类:

package com.wn.demo.springboot.config;

import org.mybatis.spring.annotation.MapperScan;
import org.mybatis.spring.boot.autoconfigure.ConfigurationCustomizer;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@Configuration
@MapperScan("com.wn.demo.springboot.mapper")
public class MyBatisConfig {
    /**
     * mybatis配置驼峰命名法,自定义ConfigurationCustomizer注入到容器中
     * @return
     */
    @Bean
    public ConfigurationCustomizer configurationCustomizer() {
        return new ConfigurationCustomizer() {
            @Override
            public void customize(org.apache.ibatis.session.Configuration configuration) {
                // 开启驼峰命名法
                configuration.setMapUnderscoreToCamelCase(true);
            }
        };
    }
}

注意

使用XML方式配置后@Mapper和@MapperScan注解就会失效,需要在mybatis配置文件中指定要扫描的包。

你可能感兴趣的:(spring boot2.1.1整合mybatis&Druid连接池)