SpringBoot整合mybatis配druid数据源(配置版)

1、创建Spring Initializr工程,勾选web,mysql,mybatis,jdbc

2、导入druid依赖

3、在application.yml中导入druid配置,可以复制粘贴

spring:
  datasource:
    username: root
    password: 123456
    url: jdbc:mysql://10.15.76.103:3306/mybatis?serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8
    driver-class-name: com.mysql.cj.jdbc.Driver
    type: com.alibaba.druid.pool.DruidDataSource

    initialSize: 5
    minIdle: 5
    maxActive: 20
    maxWait: 60000
    timeBetweenEvictionRunsMillis: 60000
    minEvictableIdleTimeMillis: 300000
    validationQuery: SELECT 1 FROM DUAL
    testWhileIdle: true
    testOnBorrow: false
    testOnReturn: false
    poolPreparedStatements: true


    filters: stat,wall
    maxPoolPreparedStatementPerConnectionSize: 20
    useGlobalDataSourceStat: true
    connectionProperties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=500

    mybatis:
      mapper-locations: classpath:/mybatis/mapper/*.xml

4、编写DruidConfig配置类,复制粘贴,datasource是sql下的

@Configuration
public class DruidConfig {

    @ConfigurationProperties(prefix = "spring.datasource")
    @Bean
    public DataSource druid(){
        return new DruidDataSource();
    }

    @Bean
    public ServletRegistrationBean statViewServlet(){
        ServletRegistrationBean bean = new ServletRegistrationBean(new StatViewServlet(), "/druid/*");

        Map<String,String> initParams = new HashMap<>();
        initParams.put("loginUsername","admin");
        initParams.put("loginPassword","123456");
        initParams.put("allow","");
        initParams.put("deny","10.15.75.147");
        bean.setInitParameters(initParams);
        return bean;
    }

    @Bean
    public FilterRegistrationBean webStatFilter(){
        FilterRegistrationBean bean = new FilterRegistrationBean();
        bean.setFilter(new WebStatFilter());
        HashMap<String,String> initParams = new HashMap<>();
        initParams.put("exclusions","*,js,*.css,/druid/*");
        bean.setInitParameters(initParams);;
        bean.setUrlPatterns(Arrays.asList("/*"));
        return bean;
    }
}

5、在数据库中手动建表。

6、创建pojo包下创建实体类

7、mapper包下创建对应mapper

@Mapper
@Repository
public interface DepartmentMapper {
    int addDepartment(Department department);
}

 8、在resource中创建mybatis/mapper包,创建对应mapper.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">

<mapper namespace="com.example.springboot.mapper.DepartmentMapper">
<insert id="addDepartment" parameterType="com.example.springboot.pojo.Department">
    insert into department(id,departmentName) values(#{id},#{departmentName})
</insert>
</mapper>

9、在application.properties中或application.yml中编写映射配置

application.properties中

mybatis.mapper-locations=classpath:mybatis/mapper/*.xml

application.yml中(跟spring平级)

mybatis:
  mapper-locations: classpath:/mybatis/mapper/*.xml

10、在controller中编写对应类

 @RestController

public class Controller {

@Autowired private DepartmentMapper departmentMapper;

@GetMapping("/addDepartment")

public int addDepartment(){

int i = departmentMapper.addDepartment(new Department(2,"梵高"));

return i;

}

}


版权声明:本文为weixin_51282879原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。