<!-- 数据库连接池-->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>${druid.version}</version>
</dependency>
<!-- mybatis 依赖-->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>${mybatis-spring-boot.version}</version>
</dependency>
<!-- jdbc支持-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<!-- mysql驱动 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>${mysql-connector-java.version}</version>
</dependency>
添加SingleDataSourceConfig.java配置文件,整合Druid数据源
/**
* 数据源配置
* @Auther: hrabbit
* @Date: 2018-12-19 11:18 AM
* @Description:
*/@Configuration@MapperScan({"com.hrabbit.admin.modual.system.mapper"})public class SingleDataSourceConfig { /**
* Druid配置
*/
@Bean
@ConfigurationProperties(prefix = "spring.datasource") public DruidProperties druidProperties() { return new DruidProperties();
}
}
其中的DruidProperties.java的配置信息如下(这里使用了Lombok,因此省略了get/set方法,不了解Lombok的童鞋请搜索下):
/**
* 数据库数据源配置
* @author hrabbit
* @date 2018-11-21 11:18
*/@Component@ConfigurationProperties(prefix = "spring.datasource")@Datapublic class DruidProperties { private String url = "jdbc:mysql://127.0.0.1:3306/guns?autoReconnect=true&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull"; private String username = "root"; private String password = "root"; private String driverClassName = "com.mysql.jdbc.Driver"; private Integer initialSize = 2; private Integer minIdle = 1; private Integer maxActive = 20; private Integer maxWait = 60000; private Integer timeBetweenEvictionRunsMillis = 60000; private Integer minEvictableIdleTimeMillis = 300000; private String validationQuery = "SELECT 'x'"; private Boolean testWhileIdle = true; private Boolean testOnBorrow = false; private Boolean testOnReturn = false; private Boolean poolPreparedStatements = true; private Integer maxPoolPreparedStatementPerConnectionSize = 20; private String filters = "stat"; public void config(DruidDataSource dataSource) {
dataSource.setUrl(url);
dataSource.setUsername(username);
dataSource.setPassword(password);
dataSource.setDriverClassName(driverClassName);
dataSource.setInitialSize(initialSize); //定义初始连接数
dataSource.setMinIdle(minIdle); //最小空闲
dataSource.setMaxActive(maxActive); //定义最大连接数
dataSource.setMaxWait(maxWait); //最长等待时间
// 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒
dataSource.setTimeBetweenEvictionRunsMillis(timeBetweenEvictionRunsMillis); // 配置一个连接在池中最小生存的时间,单位是毫秒
dataSource.setMinEvictableIdleTimeMillis(minEvictableIdleTimeMillis);
dataSource.setValidationQuery(validationQuery);
dataSource.setTestWhileIdle(testWhileIdle);
dataSource.setTestOnBorrow(testOnBorrow);
dataSource.setTestOnReturn(testOnReturn); // 打开PSCache,并且指定每个连接上PSCache的大小
dataSource.setPoolPreparedStatements(poolPreparedStatements);
dataSource.setMaxPoolPreparedStatementPerConnectionSize(maxPoolPreparedStatementPerConnectionSize); try {
dataSource.setFilters(filters);
} catch (SQLException e) {
e.printStackTrace();
}
}
}
application.yml文件中的mapper.xml的存放路径### 启动端口号server: port: 8080### 设置数据库spring: datasource: url: jdbc:mysql://127.0.0.1:3306/hrabbit_admin?autoReconnect=true&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false username: root password: root### 配置Mybatismybatis: ### xml存放路径 mapper-locations: classpath:mapper/*Mapper.xml
mapper.xml的路径resources/mapper/*.Mapper.xml如下:

image.png
SysUserMapper.java 的接口:创建一个根据id查询的接口:
/**
* 系统用户数据库层
* @Auther: hrabbit
* @Date: 2018-12-19 12:02 PM
* @Description:
*/public interface SysUserMapper { /**
* 根据id查询用户信息
* @param id
* @return
*/
SysUser findSysUserById(@Param("id") Long id);
}
SysUserMapper.xml编写sql语句:<?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.hrabbit.admin.modual.system.mapper.SysUserMapper">
<!--
根据用户id获取角色信息
-->
<select id="findSysUserById" resultType="com.hrabbit.admin.modual.system.bean.SysUser">
select * from sys_user where id=#{id}; </select></mapper>

image.png
作者:hrabbits
链接:https://www.jianshu.com/p/5a372d096597
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/1747/viewspace-2819770/ ,如需转载,请注明出处,否则将追究法律责任。