数据库相关
数据库:mysql,nosql,oracle
数据库驱动:JDBC,DBUtils
数据库连接池:c3p0,DBCP,druid
数据库缓存:redis
数据库框架:mybatis,hibernate
蔚蓝珊瑚海
这个作者很懒,什么都没留下…
展开
-
Mybatis一级缓存
文章目录MyBatis缓存一级缓存命中场景一级缓存源码解析问题MyBatis缓存二级缓存的生命周期与程序是一个级别的,除非程序挂掉,不然,二级缓存一只都在。一级缓存与会话绑定。一级缓存命中场景默认情况下,一级缓存时直接打开的一级缓存源码解析执行器执行的时候,查看缓存,如果缓存中没有,就去数据库中找,并且设置缓存当BaseExecutor中出现update(),rollback(),falushCache(),commit(),LocalCacheScope()时,就会调用cle原创 2020-08-19 21:37:23 · 209 阅读 · 0 评论 -
Mybatis执行体系
文章目录MyBatis执行体系(1)动态代理(MapperProxy)(2)SQL会话(SqlSession)(3)执行器Executor1. 简单执行器(SimpleExecutor)2.可重用执行器(ReuseExecutor)3. 批处理执行器(BatchExecutor)执行器抽象类(BaseExecutor)二级缓存(CachingExecutor)总结流程(4)JDBC处理器(StatementHandler)MyBatis执行体系MyBatis是基于JDBC的sql执行框架,他工作在DA原创 2020-08-19 19:55:36 · 255 阅读 · 0 评论 -
Redis事务了解以及整合SpringBoot
文章目录Redis事务监控 WatchJedisRedis事务事务Redis 事务本质: 一组命令的集合!一个事务中的所有命令都会被序列化,在事务执行过程的中,会按照顺序执行!一次性、顺序性、排他性、执行一些列的命令!Redis事务没有没有隔离级别的概念!所有的命令在事务中,并没有直接被执行!只有发起执行命令的时候才会执行!Redis单条命令式保存原子性的,但是事务不保证原子性!redis的事务:开启事务(multi)命令入队(…)执行事务(exec)取消事务 (DISCARD)原创 2020-06-25 22:20:41 · 198 阅读 · 0 评论 -
Nosql概述
为什么要用Nosql1、单机MySQL的年代 90年代,一个基本的网站访问量一般不会太大,更多的去使用静态网页 Html ,单个数据库完全足够,服务器根本没有太大的压力。数据量如果太大、一个机器放不下了数据的索引(B+ Tree),一个机器内存也放不下访问量(读写混合),一个服务器承受不了2、Memcached(缓存) + MySQL + 垂直拆分(读写分离) &原创 2020-06-22 21:31:24 · 191 阅读 · 0 评论 -
Redis入门了解
文章目录Redis是什么 ?Redis能做什么?Redis的特性linux安装redis基础知识Redis是什么 ?Redis(Remote Dictionary Server ),远程字典服务它是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。免费和开源,是当下最热门的 NoSQL 技术之一,也被人们称之为结构化数据库。redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了ma原创 2020-06-25 18:25:32 · 200 阅读 · 0 评论 -
Redis数据类型
文章目录RedisKey基本命令String字符串List列表Set集合Hash哈希Zset有序集合Geospatial地理位置Hyperloglog基数统计Bitmap位图场景RedisKey基本命令set name daq 设置keykeys * 查看所有的keyget name 获取到keyEXISTS name 判断当前的key是否存在move name 1 移除当前的keyEXPIRE name 10 设置key的过期时间,单位是秒ttl name 查看当前key原创 2020-06-25 20:41:23 · 232 阅读 · 0 评论 -
MySQL数据库:SQL语句优化
数据库最常用的优化方式有:SQL语句和索引、数据库表结构、系统配置、硬件。优化效果:SQL语句和索引 < 数据库表结构 < 系统配置 < 硬件,成本也是递增的。优化方法设计符合范式的数据库。设计符合范式的数据库。选择合适的存储引擎。SQL语句优化;索引优化:高分离字段建立索引。SQL表结构、字段优化。数据库参数优化:IO参数、CPU参数。延迟加载、设置缓存与缓存参数优化。分库分表:垂直切分与水平切分。分区:将表的数据按照特定的规则放在不同的分区,提高磁盘的IO.原创 2020-06-07 21:39:53 · 415 阅读 · 0 评论 -
数据库引擎
文章目录概述Innodb引擎MyIASM引擎补充概述数据库有两种引擎Innodb引擎MyIASM引擎两种引擎所使用的索引的数据结构都是 B+ 树MyIASM引擎,B+ 树的数据结构中存储的内容实际上是实际数据的地址值。也就是说它的索引和实际数据是分开的,只不过使用索引指向了实际数据。这种索引的模式被称为非聚集索引。Innodb引擎的索引的数据结构也是B+树,只不过数据结构中存储的都是实际的数据,这种索引有被称为聚集索引。Innodb引擎1、Innodb引擎提供了对数据库A原创 2020-06-07 09:43:23 · 267 阅读 · 0 评论 -
MySql基础操作
什么是数据库?数据库就是一个文件系统,只不过我们需要通过SQL命令来操作这个文件系统。数据库(DataBase)是按照数据结构来组织,存储和管理数据的建立在计算机存储设备上的仓库。作用:存储数据,数据的仓库,带有访问权限,限制不同的人可以有不同的操作。java EE操作的都是后台数据,取到后台数据进行封装,然后交给前端去展现。有哪些数据库mysql:开源免费,适用于中小企业的免费...原创 2020-02-20 20:04:33 · 215 阅读 · 0 评论 -
MySQL 多表操作
创建多表及多表的关系问: 分类表和商品表之间是不是有关系? 如果有关系,在数据库中如何表示这种关系?create table category( cid int primary key auto_increment, cname varchar(10), cdesc varchar(31));insert into category values(null,'手机数码','电...原创 2020-02-21 17:11:38 · 229 阅读 · 0 评论 -
事务-学习笔记
文章目录一、事务(Transaction)概述二、演示事务三、事务特性ACID(面试)四、安全问题&隔离级别(面试)读 问题写 问题隔离级别五、总结一、事务(Transaction)概述其实指的一组操作,里面包含许多个单一的逻辑。只要有一个逻辑没有执行成功,那么都算失败。 所有的数据都回归到最初的状态(回滚)。为什么要有事务?为了确保逻辑的成功。 如: 银行转账。二、演示...原创 2020-03-01 12:57:53 · 145 阅读 · 0 评论 -
JDBC基础知识
一、JDBC是什么?百度百科解释:JDBC(java database connectivity)驱动程序是对JDBC规范完整的实现,它的存在在Java程序与数据库系统之间建立了一条通信的渠道。它是 一 种可用于执行 SQL 语句的 Java API(Application Programming Interface, 应用程序设计接口)。简单理解:因为大部分应用是Java写的,也就只能用J...原创 2020-02-20 15:02:41 · 231 阅读 · 0 评论 -
JDBC数据库驱动使用步骤
文章目录一、添加JDBC驱动包二、使用JDBC简单步骤三、JDBC工具类(修改原有代码)四、JDBC的CRUD五、DAO模式六、JDBC Statement安全问题七、PreparStatement CRUD一、添加JDBC驱动包二、使用JDBC简单步骤1、注册驱动`DriverManager.registerDriver(new com.mysql.jdbc.Driver())...原创 2020-02-23 20:09:23 · 689 阅读 · 0 评论 -
DBUtils简化增删改查
使用开源的DBUtils概述Commons DbUtils是Apache组织提供的一个对JDBC进行简单封装的开源工具类库,使用它能够简化JDBC应用程序的开发,同时也不会影响程序的性能。简化了增删改查的操作。用法1. 导入jar包 commons-dbutils-1.4.jar2. 基本代码如下: //创建 QueryRunner 对象 QueryRunner queryR...原创 2020-03-01 21:43:01 · 178 阅读 · 0 评论 -
数据库连接池
文章目录一、概述二、作用三、自定义数据库连接池出现的问题解决方式:装饰者模式四、开源连接池DBCPC3P0(重点)一、概述数据库的连接对象创建工作,比较消耗性能。一开始现在内存中开辟一块空间(集合) , 一开先往池子里面放置 多个连接对象。 后面需要连接的话,直接从池子里面去。不要去自己创建连接了。 使用完毕, 要记得归还连接。确保连接对象能循环利用。连接池指:创建一个池子(容器) ...原创 2020-03-01 19:13:08 · 129 阅读 · 0 评论
分享