当前位置: 首页 > news >正文

springboot-创建连接池

操作数据库

代码开发步骤:

  1. pom.xml文件配置依赖
  2. properties文件配置连接数据库信息(连接池用的是HikariDataSource)
  3. 数据库连接池开发
    1. @configurationproperties和@value注解从properties文件中取值+@bean+方法开发

service层代码操作数据库

步骤:

1、数据库相关

  1. 安装与配置主从数据库
    1.  安装方法是-克隆虚拟机
  2. 主从数据库同步数据(后续)
    1. 增删改业务-- service--mysql(主) linux部署 
    2. 查询业务  -- service--mysql(从) linux部署

2、代码开发

  1. 配置pom.xml文件-- mysql数据库相关配置+spring boot操作
  2. properties文件增加连接池数据库信息(连接池用的是HikariDataSource)

增加数据库驱动类,增加url,增加数据库用户名/密码,增加连接池,增加连接池最大数,增加连接池最小空闲值

        配置从库数据库,在名称上更改slave

数据库连接池开发

源码类HikariDataSource,使用2个构造方法

public HikariDataSource()构造连接池
public HikariDataSource(HikariConfig configuration)构造连接池配置

代码开发

因为在配置中看到有数据库连接池,现在新建数据路连接池配置datasourceconfig

使用源码类HikariDataSource,使用2个构造方法

原本的数据库链接代码(接口的内容)

现在也可以使用

封装方法

新建主库/从库,包含的信息一致,连接数据库的基本信息,连接池的连接数量

因为是spring boot项目的主库/从库里的数据库信息是在properties文件内配置,

需要在代码中引入,所以需要增加注解

        目前在封装的代码中,要解决的问题就是,定义属性,然后写入参数,因为现在是主库和从库两份方法,如果只定义属性calssname,主库从库都需要使用,所以需要在方法中加入@value注解

为了解决属性一一对应的问题,

需要在参数里增加注解,同事主库和从库代码修改

目前已经写了主库和从库的连接数据库基本信息和连接池的链接数量的设置,并将代码与配置文件一一对应

但只是列出代码,没有增加返回值,无法调用

增加返回值

 

需要先创建连接池

在类上增加@configuration注解,

为什么要加@bean注解?

1,在类上没有➕@configuration注解时,只是一个普通类

2、需要先创建连接池,随着项目启动;所以在类上增加@configuration注解先进行创建,也需要在主库/从库方法上增加@bean,随着项目启动

 

测试

随着数据源启动测试

 

有问题解决

看问题caused by--这个数据源不能解析

 解决:

因为配置文件时hikari,代码中写错了

测试

把config注解去掉代码也可以配置成功,因为有@value注解就可以配置,并且value是全路径,如果value是只有url路径,就会报错,但也可以增加config注解

 


接下来就可以从池子里借链接就可以操作数据库,返回结果即可

http://www.lryc.cn/news/437947.html

相关文章:

  • matlab绘制不同区域不同色彩的图,并显示数据(代码)
  • Docker Desktop 的安装与汉化指南
  • 前端form表单+ifarme方式实现大文件下载
  • Leetcode面试经典150题-141.环形链表
  • sh文件执行提示语法错误: 未预期的文件结尾
  • 基于SpringBoot的甜品店管理系统
  • 动态规划-不同的子序列
  • 如何通过OceanBase的多级弹性扩缩容能力应对业务洪峰
  • D - 1D Country(AtCoder Beginner Contest 371)
  • 怎么很多张图片拼接成一张?试试这几种图片拼接方法!
  • Python实现优化的分水岭算法
  • 智慧交通基于yolov8的行人车辆检测计数系统python源码+onnx模型+精美GUI界面
  • Linux开发工具的使用
  • 【devops】devops-git之介绍以及日常使用
  • 012复杂度07leetcode
  • 4.网络编程
  • OpenCV GUI常用函数详解
  • Tuxera NTFS for Mac破解版下载 Tuxera NTFS for Mac2023激活码 mac电脑ntfs磁盘软件
  • oceanbase(ob)基于备份集搭建备租户方式
  • Javase复习day21算法、arrays、Lamdba表达式
  • 移动硬盘无法读取?别慌!这些方法助你恢复数据!
  • Java集合面试(上)
  • Python画笔案例-046 绘制小红伞
  • 使用 .NET 6 构建跨平台 Worker Service 服务:跨越平台的 C# 服务开发——解决Windows服务跨平台问题
  • terminator-gnome
  • 7.测试用例设计方法 + Bug
  • uniapp小程序,使用腾讯地图获取定位
  • Reactive 编程-Project Reactor
  • splice用法
  • Redis - 缓存