1.JDBC+HikariDataSource
在SpringBoot 2.x项目中,默认使用Hikari连接池管理数据源。相比于传统的 C3P0 、DBCP、Tomcat jdbc 等连接池更加优秀。
当项目pom.xml引入spring-boot-starter-jdbc启动器依赖后,即可自动导入Hikari,该启动器不但依赖它,还会对其自动配置并创建数据源。我们以MySQL数据库为例,介绍如何使用Hikari。
1.1应用实例
演示SpringBoot如何通过 JDBC+HikariDataSource 完成对Mysql操作。
(1)数据库和表
-- 创建数据库 |
|
DROP DATABASE IF EXISTS spring_boot; |
|
CREATE DATABASE spring_boot; |
|
USE spring_boot; |
|
-- 创建表 |
|
CREATE TABLE furn( |
|
`id` INT(11) PRIMARY KEY AUTO_INCREMENT, #id |
|
`name` VARCHAR(64) NOT NULL, #家居名 |
|
`maker` VARCHAR(64) NOT NULL, #厂商 |
|
`price` DECIMAL(11,2) NOT NULL, #价格 |
|
`sales` INT(11) NOT NULL, #销量 |
|
`stock` INT(11) NOT NULL, #库存 |
|
`img_path` VARCHAR(256) NOT NULL #照片路径 |
|
); |
|
-- 初始化家居数据 |
|
INSERT INTO furn(`id` , `name` , `maker` , `price` , `sales` , `stock` , `img_path`) |
|
VALUES(NULL , '北欧风格小桌子' , '熊猫家居' , 180 , 666 , 7 , 'assets/images/product-image/6.jpg'); |
|
INSERT INTO furn(`id` , `name` , `maker` , `price` , `sales` , `stock` , `img_path`) |
|
VALUES(NULL , '简约风格小椅子' , '熊猫家居' , 180 , 666 , 7 , 'assets/images/product-image/4.jpg'); |
|
INSERT INTO furn(`id` , `name` , `maker` , `price` , `sales` , `stock` , `img_path`) |
|
VALUES(NULL , '典雅风格小台灯' , '蚂蚁家居' , 180 , 666 , 7 , 'assets/images/product-image/14.jpg'); |
|
INSERT INTO furn(`id` , `name` , `maker` , `price` , `sales` , `stock` , `img_path`) |
|
VALUES(NULL , '温馨风格盆景架' , '蚂蚁家居' , 180 , 666 , 7 , 'assets/images/product-image/16.jpg'); |
|
SELECT * FROM furn; |
(2)进行数据库开发,首先要在pom.xml文件中引入spring-boot-starter-data-jdbc。SpringBoot不知道项目要操作Mysql还是Oracle,因此还需要导入数据库驱动,并指定对应版本。
<!--进行数据库开发,引入data-jdbc starter--> |
|
<dependency> |
|
<groupId>org.springframework.boot</groupId> |
|
<artifactId>spring-boot-starter-data-jdbc</artifactId> |
|
</dependency> |
|
<!--导入mysql驱动,如果使用版本仲裁,SpringBoot默认的版本为8.0.26--> |
|
<dependency> |
|
<groupId>mysql</groupId> |
|
<artifactId>mysql-connector-java</artifactId> |
|
<version>5.1.49</version> |
|
</dependency> |
(3)在application.yml配置操作数据源的信息
spring:< |