使用数据库是开发应用的基本基础,那么,使用Spring Boot如何连接数据库呢?
前提,需要知道如何建一个Spring Boot项目,可参照:https://www.jianshu.com/p/d6e6c84cd190
一、准备工作:
1、建一个简单的数据库,名为springboot_db,在其下建一个表,名为t_author,脚本如下:
CREATE DATABASE /*!32312 IF NOT EXISTS*/`springboot_db` /*!40100 DEFAULT CHARACTER SET utf8 */;
USE `springboot_db`;
DROP TABLE IF EXISTS `t_author`;
CREATE TABLE `t_author` (
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '用户ID',
`real_name` varchar(32) NOT NULL COMMENT '用户名称',
`nick_name` varchar(32) NOT NULL COMMENT '用户匿名',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
2、添加配置文件,可用使用yaml配置,即application.yml(与application.properties配置文件,没什么太大的区别)连接池的配置如下:
spring:
datasource:
url: jdbc:mysql://127.0.0.1:3306/springboot_db?useUnicode=true&characterEncoding=UTF-8&useSSL=false
driverClassName: com.mysql.jdbc.Driver
username: root
password: root
type: com.alibaba.druid.pool.DruidDataSource
3、需要建立与数据库对应的POJO类,代码如下:
public class Author {
private Long id;
private String realName;
private String nickName;
// SET和GET方法略
}
二、方式一:与JdbcTemplate集成
通过JdbcTemplate来访问数据库,Spring boot提供了如下的starter来支撑:
org.springframework.boot
spring-boot-starter-jdbc
再引入Junit测试Starter:
org.springframework.boot
spring-boot-starter-test
test
DAO接口:
package com.guxf.dao;
import java.util.List;
import com.guxf.domain.Author;
public interface AuthorDao {
int add(Author author);
int update(Author author);
int delete(Long id);
Author findAuthor(Long id);
List findAuthorList();
}
实现Dao接口代码(此处只写Add,其他方法略):
package com.guxf.impl;
import java.util.HashMap;
import java.util.List;
import ja