自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(8)
  • 问答 (1)
  • 收藏
  • 关注

原创 MySQL隔离级别和实现方式(MVCC/LBCC)

MySQL隔离级别和实现方式(MVCC/LBCC)一、并发访问数据库会产生哪些问题(并发一致性问题)?二、LBCC,三段封锁协议,读写锁解决修改丢失、脏读、不可重复读三、LBCC,Next key-lock解决幻读四、MVCC,多版本并发控制,快照读不加锁,大大提高并发度一、并发访问数据库会产生哪些问题(并发一致性问题)?1.修改丢失:两个事务同时修改同一行数据,发生了修改覆盖问题。2.脏读:A事务读到了B事务还未提交的修改。3.不可重复读:在避免脏读的前提下,同一个事务中,多次执行相同的查询语句,

2020-10-07 16:47:35 695

原创 Java中的方法重载(Overload)和方法覆盖/方法重写(Override)

Java中的方法重载(Overload)和方法覆盖/方法重写(Override)一、方法重载二、方法覆盖/方法重写一、方法重载1.方法重载又称为Overload2.方法重载什么时候使用?当在一个类中,方法完成的功能是相似的,建议方法名相同,方便程序员编程,就好像在调用一个方法,代码更加美观。3.什么条件满足之后构成方法重载?在同一个类中方法名相同参数列表不同(类型、顺序、个数)4.方法重载和什么无关?和方法的返回值类型是否相同无关和方法的修饰符列表是否相同无关二、方法覆盖/方法重写

2020-09-23 19:24:01 547

原创 利用HashMap和双向链表实现LRU(最近最久未被使用)算法(LeetCode146题)

利用HashMap和双向链表实现LRU(最近最久未被使用)算法一个场景,缓存机制,(用双向链表维护缓存区域,头节点为最久未被访问节点,尾节点为最近被访问的节点),缓存有限,优先替换出头节点,最近被访问的放到尾节点。HashMap的作用:链表删除添加节点的时间复杂度为O(1),但是找到元素的时间复杂度为O(n),通过HashMap实现O(1)复杂度的节点查找。不过多解释了,直接上代码了,不懂可以直接留言。public class DoubleLinkedList implements Iterable

2020-07-22 22:45:57 199

原创 Java数据库连接池简单模拟(等待/通知模式,多线程)

数据库连接池Java对于数据库的操作,需要创建相应的数据库连接,connection的创建和释放是耗时的。于是有了数据库连接池,提前创建好若干connection,需要用就去池子里面取,不用了直接放回池子就OK,之后可以供他人使用。Java常用的数据库连接池有DBCP、C3P0等等等待/通知经典范式等待方:1.获取对象锁2.while循环判断条件是否满足,不满足则调用对象的wait方法,进入等待队列3.被通知后依然检查条件是否满足,满足则执行后续逻辑synchronized (对象){

2020-06-25 17:40:54 290

原创 Java四种内部类(静态内部类、成员内部类、局部内部类、匿名内部类)超全!

Java四种内部类一、静态内部类二、成员内部类三、局部内部类四、匿名内部类Java一共有四种内部类,除了匿名内部类,其他的相对来说用的比较少,今天就给大家总结一下它们各自的用法和一些需要注意的点~一、静态内部类直属于外部类,并用static关键词修饰的类叫做静态内部类1.静态内部类可以等同看作外部类的静态变量2.静态内部类可以加访问控制权限修饰符(private、protect、public)public class OuterClass { public static class In

2020-05-18 14:47:59 497

原创 Java是值传递还是引用传递?(保证你搞懂参数传递原理!)

Java是值传递还是引用传递关于是值传递还是引用传递,我个人觉得没有必要纠结这个问题。当调用方法传参的时候,底层的逻辑是不变的,但是不同的人对于这两个词有不同的理解,所以没有必要纠结这些。我们只需要搞懂参数传递的原理即可。1.基本数据类型和引用数据类型想要弄懂今天的问题,首先需要知道基本数据类型和引用数据类型,直接上图:基本数据类型直接在栈内存,存值引用数据类型在栈内存存的是引用,引用指向堆内存里面的真正的值2.执行方法传参到底发生了什么2.1方法参数为基本数据类型public class

2020-05-14 12:41:27 225

原创 synchronized关键字详解(作用、使用方式、特性、锁升级过程)

synchronized详解synchronized是什么,有什么用?synchronized如何使用?一级目录上一篇文章《单例模式(Java)》中讲到了双重检查单例模式DCL,里面涉及到了两个关键字synchronized和volatile,关于它们的知识点还是很多的,这篇文章我想先介绍一下synchronized,并不涉及DCL单例模式本身,下一篇文章会结合DCL单例模式详细介绍volati...

2020-05-07 17:33:19 351

原创 单例模式总结(Java)

单例模式总结(Java)单例模式是一个特别常用的设计模式,面试中手撕单例模式也是非常常见的,所以我在这里对单例模式的写法进行了总结。一、饿汉式(静态变量直接实例化、静态代码块处实例化)二、懒汉式(非线程安全、线程安全、双重检查DCL)三、静态内部类四、枚举public class Singleton { public static void main(String[] ar...

2020-05-04 23:04:24 348 1

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除