对于数据访问层,无论是 SQL(关系型数据库) 还是 NOSQL(非关系型数据库),Spring Boot 底层都是采用 Spring Data 的方式进行统一处理。
Sping Data 官网
首先先建一个项目,引入相对应的模板! 如下图:
引入模板后,打开pom查看,即可看到如下代码:(表示已成功导入模板成功 , 否则 ,点击 ->下载资源后->再刷新一下,即可!)
org.springframework.boot
spring-boot-starter-web
org.springframework.boot
spring-boot-starter-jdbc
mysql
mysql-connector-java
runtime
在资源包(resources)中创建application.yaml
# username和password 是你的数据库账号与密码!
# url中的mybatis 是数据库的库名
spring:
datasource:
username: root
password: 123456
# 假如时区报错,就增加一个时区 serverTimezone=UTC
url: jdbc:mysql://localhost:3306/mybatis?useUnicode=true&characterEncoding=utf-8
driver-class-name: com.mysql.cj.jdbc.Driver
数据库代码如下:(全选即可运行!)
create database mybatis;
use mybatis;
create table user(
id int(20) not null primary key,
name varchar(30) default null,
pwd varchar(30) default null
)engine=innodb default charset=utf8;
insert into user (id,name,pwd) VALUES
(1,'张三','123'),
(2,'李四','456'),
(3,'王五','852');
在测试类(test)中点开xxxApplicationTests:(添加如下代码)
package com.jin;//这是我的包的路径
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import javax.sql.DataSource;
import java.sql.Connection;
import java.sql.SQLException;
@SpringBootTest
class Springboot05DataApplicationTests {
@Autowired
DataSource dataSource;
@Test
void contextLoads() throws SQLException {
//查看一下默认的数据源
System.out.println(dataSource.getClass());
//获得数据库连接
Connection connection = dataSource.getConnection();
System.out.println(connection);
connection.close();
}
}
点击(测试类)运行,若没报错 即可看到数据源和数据库连接情况!效果图如下:
与启动器(xxxApplication.java )的同级创建一个包(controller),包下有类(JDBCController.java)。结构如下:
在JDBCController 中添加如下代码:
package com.jin.controller;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
import java.util.Map;
@RestController
public class JDBCController {
@Autowired
JdbcTemplate jdbcTemplate;
//查询数据库的所有信息
//没有实体类,数据库中的东西,怎么获取? Map
@RequestMapping("/userList")
public List
运行Springboot中的启动器,快捷键(Shift+F10):
效果图如下:(修改相对于的url,即可实现数据库的增删改查功能!)