SpringBoot内置数据源

回顾:

在我们之前学习在配置文件当中配置对应的数据源的时候, 我们设置的数据源其实都是Druid的数据源, 并且其配置有两种方式, 当然这两种方式都需要我们导入对应的有关 德鲁伊 的依赖才行

    • 一种是直接在开始设置为 druid 数据源类型的
    • 一种是在对应的正常的数据库配置下, 设置对应的类型 type 为druid 的类型
  • 但是, 如果什么也不配, 会存在数据源吗? 提问

尝试:

复制代码
spring:
  datasource:
    driver-class-name: com.mysql.cj.jdbc.Driver
    url:  jdbc:mysql://localhost:3306/ssm_db?characterEncoding=utf8&useSSL=false&serverTimezone=UTC&allowPublicKeyRetrieval=true
    username: root
    password: 123456

代码如上, 我们已经将对应的数据库的信息都设置完成了, 但是并没有使用哪两种方式, 来设置其数据源具体是什么

启动测试类:

我们发现对应的测试类启动的时候, 其依旧使用的是Druid的数据源

不是哥们, 我不是没用你吗????

原理:

原来, 实际上是因为我们在导入对应的有关Druid的依赖的时候, 就已经自动的将我们的数据源设置为了是 Druid 的类型了

那么, 如果将对应的Druid依赖去除, 会发生什么?

如图, 再次启动之后, 我们发现对应的Druid的数据源已经发生了改变, 当前不再是Druid类型的数据源了

继续向下寻找, 我们发现了一个有关数据源 DateSource的名词

what is hikarDateSource?

这就是我们当前SpringBoot为我们自己设置的数据源, 而这样的内置数据源, 实际上还有两个

而这三个数据源, 我们得SpringBoot为我们默认设置得是HikarDateSource得数据源

我们也可以在对应的配置类当中自己手动得设置想要使用那一个数据源

复制代码
spring:
  datasource:
    url: jdbc:mysql://localhost:3306/ssm_db?characterEncoding=utf8&useSSL=false&serverTimezone=UTC&allowPublicKeyRetrieval=true
    hikari:
      driver-class-name: com.mysql.cj.jdbc.Driver
      username: root
      password: 123456

代码如上, 我们可以这样配置, 但是如果将所有得数据全部都进行配置, 包括对应的URL, 就会出现以下的情况:

没有找到合适的驱动类

为什么>_< 不到

但是将对应的URL放在外面就可以正常的执行了

在其中我们也可以设置其他的有关数据库的操作

小结:

相关推荐
明月_清风9 小时前
Muse 登顶 App Store 第一,SDK 直接开源:AI Agent 开始进入下一个阶段
人工智能·后端
leikooo9 小时前
用餐厅和盘子理解栈和堆
java·数据结构·链表·rust
Ivanqhz10 小时前
激活函数在 Transformer 中的作用及各种变体简述
java·linux·数据库·人工智能·深度学习
沙漠之主11 小时前
C++编程教学设计资料:从入门到实战的完整课程方案
java·前端·c++
FPGA小徐11 小时前
PA1 基础设施(2)深度解析:NEMU 中 ITRACE、MTRACE、FTRACE、IRINGBUF、ETRACE、DIFFTEST 全解析
java·服务器·网络
YOLO数据集集合11 小时前
EvoAgent:面向PR研发治理的自进化Multi-Agent Harness系统
java·开发语言·目标检测·agent·自进化
hsfxuebao11 小时前
Loop Engineering 保姆级教程 + 项目实战
人工智能·后端
知行EDI12 小时前
知行之桥 MaBang 端口使用指南——Create Order 订单创建篇
java·服务器·数据库
笑鸿的学习笔记12 小时前
C++笔记之大块顺序写
java·c++·笔记
打工仔折腾 AI12 小时前
从 Demo 到生产级 Agent:8 个关键设计机制与 Python 实现拆解
java·jvm·人工智能·后端·python·langchain·ai agent 实战