- 博客(16)
- 收藏
- 关注
原创 MyBatis
一、基础介绍 介绍 MyBatis是一款支持定制化 SQL、存储过程以及高级映射的半自动化持久化层框架。 其可以使用简单的XML或注解用于配置和原始映射,将接口和Java的POJO映射成数据库中的记录。 使用流程 使用MyBatis的流程:MySQL表——实体类——Mapper接口——xml映射文件 全局配置 可以在properties配置文件中配置数据库信息,包括driver、url、username、password spring.datasource.driver-class-name
2022-05-27 00:35:05
164
原创 shell脚本
试验demo: 统计proc目录下Linux进程相关的数量信息,最后输出总进程数、running进程数、stopped进程数以及zombie进程数。 #!/bin/bash ALL_PROCESS=$(ls /proc/ | egrep '[0-9]+') running_count=0 stopped_count=0 sleeping_count=0 zombie_count=0 for pid in ${ALL_PROCESS[*]} do test -f /proc/$pid/..
2022-05-26 19:09:56
160
原创 MySQL索引
一、概念 简单说一下索引,它是在存储引擎中实现的帮助MySQL高效获取数据的数据结构。 它的目的是为了快速查询和检索数据。索引中包含着对数据表里所有记录的引用指针,使用索引可快速访问数据库表中的特定信息 二、优缺点: 优点: 1)建立索引可以提高数据检索的效率,降低数据库的IO成本; 2)通过创建唯一索引,可以保证数据库表中每一行数据的唯一性; 3)可以加快表与表之间的连接,例如联合查询有依赖关系的子表和父表(外键),可以提高查询速度; 4)在使用分组和排序子句进行数据查询时,可以显著减少查
2022-05-26 15:31:43
126
原创 InnoDB的索引方案推演
一、索引底层 InnoDB使用页来作为管理存储空间的基本单位,最大的连续存储空间限定为16KB。 索引底层的组成为实际的数据页。数据页中每条数据记录的组成包括: record_type:记录头信息的一项属性,表示记录的类型 0 表示数据记录、 1 表示目录项记录、 2 表示最小记录、 3 表示最大记录。 next_record:记录头信息的一项属性,表示下一条地址相对于本条记录的地址偏移量。 各个列的值:记录实际的列数据。 其他信息 :除了上述3种信息以外的所有信息,包括其他隐藏列的值以及
2022-05-26 15:31:02
239
原创 常用Linux命令
一、文件和目录相关命令 1、ls命令 作用:查看文件和目录的信息 参数:-l:显示详细信息;-a:增加显示隐藏文件;-R:递归列出子目录内容;-t:按时间排序; 2、cp命令 作用:复制文件 参数:-a:将文件特性一起复制;-r:递归复制;-u:目标文件与源文件有差异才复制; 3、find命令 作用:查找文件 语法:find [PATH] [option] [action] 参数: 与时间相关: -mtime n : n为数字,意思为在n天之前的“一天内”被更改过的文件; -m
2022-05-20 12:00:36
278
原创 一条select语句的执行原理
第一步:查询缓存 一、介绍 注意:MySQL8.0之后就抛弃了缓存功能。(因为查询缓存平均效率不高)MySQL8.0之前可通过query_cache_type参数开关查询缓存 当SQL开始执行时,Server会现在查询缓存中查找该SQL语句。之前性质过的语句及其结果会以key-value的形式缓存在内存中。遍历所有key,查找是否有和执行的SQL吻合的,如果查找到,则直接将结果返回给客户端;如果没有,就会进入到解析器阶段,且最终的执行结果会被存入缓存之中。 二、查询缓存效率不高的原因? 1、两..
2022-05-19 00:52:25
323
原创 流式编程基础内容解读
要求:编写一个流式编程的demo 实际做法:找了一道流式编程的题目,使用代码进行8个问题的回答,实际代码如下: import java.util.ArrayList; import java.util.Arrays; import java.util.List; import java.util.Optional; public class StreamDemo { private static List<Transaction> createTransactionList(.
2022-05-18 15:46:18
682
原创 HashMap源码分析
一、JDK7 (一)解读 1、数据结构 JDK1.8之前的HashMap的实现方式是数组+链表 2、劣势 HashMap单个槽下是一条链表,遍历链表的时间复杂度是O(n),失去了快速检索的优势 针对这种情况,JDK1.8引入了红黑树来优化 二、JDK8 (一)解读 1、数据结构 JDK1.8的HashMap的数据结构是数组+链表+红黑树的形式,当HashMap容量>64 and 链表长度>8之后,每个槽的数据结构转为红黑树;当Node删除至链表长度<6时,再次转变为链表
2022-05-17 21:09:08
455
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅