连接池笔记\JDBC的API\ACID属性\数据并发问题

news/2024/7/21 23:58:24/文章来源:https://blog.csdn.net/kekexiaomayi/article/details/139118127

1-池化思想
字符串常量池、数据库连接池、线程池
频繁使用的东西,不要每次都去创建
没连接池之前:
(1)获取连接
(2)进行sql操作
(3)断开连接
存在问题
(1)每次都要加载对象,验证账号密码、连接、断开消耗资源
(2)非常多人连接断开,可能会导致服务器崩溃
(3)不能管理创建的连接对象,分配资源没有管理能力,可能导致内存泄漏服务崩溃

连接池概述
(1)是个容器,可以管理连接
(2)可以重复使用现有连接
(3)长时间不用会关闭

连接池实现
用DataSource接口实现,接口定义了连接功能,第三方实现接口

常用连接池
DBCP
C3P0
Druid(德鲁伊) 阿里提供的

2-数据持久化
把数据保存到永久保存的设备中

3-java中的数据存储
(1)序列化与反序列化
(2)操作数据库(增、删、改、查)

4-java如何操作数据库
(1)通过jdbc直接访问
(2)第三方o/r工具(mybatis)
(3)JDBC是底层的原理

5-JDBC是操作数据库的Api,定义了操作数据库的规范

6-java->jdbc->数据库驱动->数据库

7-有了JDBC之后,不同的数据库根据JDBC规范,可以操作数据库。

8-JDBC的API
(1)DriverManager:驱动管理
(2)Connection:数据库连接对象
(3)Statement:执行sql语句
(4)ResultSet:结果集对象
过程:写java代码,java代码将sql语句发送到mysql服务器,mysql数据库接收sql语句处理,将结果返回
9-导入包
选择版本:到maven仓库https://mvnrepository.com/artifact/com.oracle.database.jdbc/,输入mysql-connect(oracle-connect),选择一个后点进详情页,前面数字是数据库的版本号,选择使用多的下载。
10-JDBC事务操作
事务的ACID属性
(1)原子性:不可分割,要么同时失败,要么同时成功
(2)一致性:事务必须使数据库从一个一致性状态转为另一个一致性状态
(3)隔离性:事务之间互不干扰
(4)持久性:事务的操作是永久性的

11-数据并发问题
(1)脏读:A事务读到B事务没有提交的
(2)不可重读:A事务先读到的值,被B事务更改了
(3)幻读:A读所有,B再插入新的,A再去读,数据变多了

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_1053146.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

黑马python-面向对象程序设计

1.定义类 class 类名: 代码 ….. 注意:类名要满足标识符命名规则,同时遵循大驼峰命名习惯 2.self: self指调用该函数的对象 3.创建对象 对象名类() 4.添加获取对象属性 对象名.属性名值 5._init_()方法&…

享受当下,还是留待未来?一项fMRI与眼动追踪技术的联合研究

摘要 时间贴现(temporal discount)是指个体对奖励的估计会随着时间流逝而下降的心理现象。具体而言,当获得奖励的时间以日期(日期条件;例如,2023年6月8日)而不是延迟(延迟条件;例如,30天)呈现时,贴现率较低…

等了10年,终于迎来RTX5/RTX4全家桶开源,开源,开源! 且免费商用

我们的V4, V5, V6 ,V7开发板都配套了大量的RTX4, RTX5教程和案例,从2015年发布首版RTX4内核教程以来,已经整整10年了。 1、制作这个RTX教程和案例,其实也承受了很大的压力,因为只有RTX内核是免费商用的,中间件并不免费…

水电表远程抄表:智能化时代的能源管理新方式

1.行业背景与界定 水电表远程抄表,是随着物联网技术发展,完成的一种新型的能源计量管理方式。主要是通过无线传输技术,如GPRS、NB-IoT、LoRa等,将水电表的信息实时传输到云服务器,进而取代了传统人工当场抄水表。这种…

第十二课,for循环

一,for循环对字符串(序列)的基础语法 语法:for i in “hello world”: *小练习:统计字符串中有一个字符?特定的字符有几个? 二,for循环的range语句 ①从a开始到b结束,每…

医学中脑机接口技术的未来

医学中脑机接口技术的未来 李升伟 编译 对非侵入性脑机接口(而不是植入物)日益增长的兴趣可能会提高患者的易使用性,但分辨率需要提高。 图片来源:Denis Pobytov / DigitalVision Vectors / Getty 全球范围内正在展开一场争夺利用…

AutoDL搭建 ChatGLM3

租用新实例 这里选择的西北 B 区、RTX 409024GB 创建虚拟环境并激活 # 安装虚拟环境至数据盘 conda create --prefix /root/autodl-tmp/envs/chatglm3-demo python3.10# 激活虚拟环境 conda activate /root/autodl-tmp/envs/chatglm3-demo拉取ChatGLM3仓库代码 # 开启学术…

wordpress主题 ACG美化插件v3.4.2支持zibll主题7b2主题美化

独具一格的二次元风格,打造全新的子比美化方向 大部分代码均为CSS、JS做成插件只是为了方便懒人小白站长 后台全功能一览,大部分美化均为网上通用流传,

DreamerV3阅读笔记

DreamerV3 文章希望解决的一个挑战是用固定的hyperparameter来同时处理不同domain的任务。文章发现,通过结合KL balancing 和free bits可以使得world model learn without tuning(是指上面这件事,即不需要对不同任务改变hyperparameter&#…

Java学习17

目录 一.System类: 1.System类常见方法 二.BigInteger和BigDecima类: 三.日期类: 1.Date:精确到毫秒,代表特定的瞬间。 2.Calendar: (1)简介: 3.第三代日期类: 1.第三代日期类的常用方…

Java入门基础学习笔记44——String

为什么要学习String的处理呢? 开发中,对字符串的处理是非常常见的。 String是什么?可以做什么? java.lang.String 代表字符串。可以用来创建对象封装字符串数据,并对其进行处理。 1、创建对象 2、封装字符串数据 3…

Linux x86_64 UEFI 启动

文章目录 前言一、UEFI二、Disk device compatibility2.1 GPT 磁盘分区表2.1.1 简介2.1.2 Linux 2.2 ESP(EFI) 文件系统2.2.1 简介2.2.2 LinuxLinux Kernel EFI Boot Stub 三、UEFI GPT grub23.1 简介3.2 引导方式 3.3 BOOTX64.EFI3.4 shimx64.efi3.5 …

Go语言

文章目录 Go语言特点应用领域Go语言和Java语言的对比JavaGo 总结 Go语言安装配置环境变量Hello World Go语言 Go语言全称Golanguage,Go(又称 Golang)是 Google 的 Robert Griesemer,Rob Pike 及 Ken Thompson 开发的一种静态强类…

CogVLM2: 智谱开源新一代多模态大模型!

节前,我们组织了一场算法岗技术&面试讨论会,邀请了一些互联网大厂朋友、今年参加社招和校招面试的同学。 针对大模型技术趋势、大模型落地项目经验分享、新手如何入门算法岗、该如何准备面试攻略、面试常考点等热门话题进行了深入的讨论。 汇总合集…

三、自定义信号和槽函数(无参和有参)

需求: 下班后,小明说请小红吃好吃的,随便吃,吃啥买啥 无参:小红没有提出吃啥 有参:小红提出自己想吃的东西,吃啥取决于一时兴起(emit触发) 思路: 1&#xff…

钉钉企业内部H5微应用或小程序之钉消息推送

钉钉简单的推送钉消息 一、钉钉准备工作 首先进入钉钉开放平台 你得有企业内部微应用或者小程序 没有创建的话去看我另一篇文章有说明 钉钉开放平台创建企业内部H5微应用或者小程序-CSDN博客 看不懂话也可以参考官方文档:创建应用 - 钉钉开放平台 二、开发的准备…

微服务项目收获和总结---第5天(定时发布)

延迟任务 目录 延迟任务技术对比: Redis实现定时任务:​编辑新增任务:取消任务:拉取任务:Zset定时刷新数据到List中:分布式锁实现定时任务只刷新一次: 技术对比: Redis实现定时任…

软考数据库系统工程师试题及答案,分享几个实用搜题和学习工具 #媒体#知识分享#知识分享

以下分享的软件提供了各种实用的功能,如数学公式计算、语文阅读辅助等,让大学生们在学习过程中更加高效和便利。 1.众课帮 这是搜题app 一款考试找答案工具 ,支持拍照、语音、文字三种搜题方式。拥有海量题库,覆盖了大学生网课…

二零二四充能必读 | 618火热来袭,编程书单助你提升代码力

文章目录 📘 Java领域的经典之作🐍 Python学习者的宝典🌐 前端开发者的权威指南🔒 并发编程的艺术🤖 JVM的深入理解🏗 构建自己的编程语言🧠 编程智慧的结晶🌟 代码效率的提升 亲爱的…

Spring系列-02-Bean类型, 作用域, 实例化, 生命周期

Bean类型, 作用域, 实例化, 生命周期 Bean类型 在 SpringFramework 中,对于 Bean 的类型,一般有两种设计: 普通BeanFactoryBean 普通Bean 三种方式 Component注解配置类Beanxml <bean> Component public class Child {}Bean public Child child() {return new Ch…