最新文章

MySQL utf8与utf8mb4

utf8mb4字符集具有以下特征:支持BMP( Basic Multilingual Plane 基本多语种平面 )和 补充字符( Supplementary Multilingual Plane 补
2024-01-08 / 0 comments

字节码初览

字节码初览示例程序/** * @author shaoming */public class ByteCodeView { public static void main(String[] ar
2021-08-02 / 0 comments

2020年年终总结

开篇2020年已经完全过去了,总结本来元旦放假时就想写了,但是由于平时工作过于肝,就利用假期好好休息了。好吧,那么就打开2020年的时间轴吧!一月回想那时还是挺快乐的,在大鸟网愉快的搬砖,中午和同事一
2021-02-15 / 0 comments

类之间的关系

泛化关系(generalization)类继承结构通常表现为,泛化(generalize)与实现(realize)继承关系为is-a的关系;两个对象之间如果可以用is-a来表示,就是继承关系:(.....是.....)自行车是车;猫是动物泛化关系;可以理解为从宏观到微观。人可以泛化为男人和女人,方向可以泛化为东方、西方、南方、北方,当然可以更具体。代码上的体现,泛化关系表现为继承非抽象类(non-
2020-07-07 / 0 comments

大数阶乘

由于溢出,使用原始int数据类型无法找到大于或等于13的数字的阶乘太大而int变量无法容纳,其最大值仅为2147483647(2^31-1)。即使我们使用long数据类型,大于或等于21的阶乘也会产生
2020-04-23 / 0 comments

二分查找算法

介绍在计算机科学中,二分查找算法(英语:binarysearchalgorithm),也称折半搜索算法(英语:half-intervalsearchalgorithm)、对数搜索算法(英语:logar
2020-04-23 / 0 comments

MySQL索引失效详解

被索引字段,发生隐式类型转换例如以下表结构CREATE TABLE consumers( `consumerId` varchar(11) NOT NULL PRIMARY KEY COMMENT '用户Id', `consumerAge` int(10) NOT NULL COMMENT '用户年龄', `consumerName` varchar(120) NOT NULL
2020-04-22 / 0 comments

MySQL的InnoDB引擎

InnoDB存储引擎支持事务,其设计目标主要面向在线事务处理(OLTP)的应用。其特点是行锁设计、支持外键,并支持类似于Oracle的非锁定读,即默认读取操作不会产生锁。从MySQL数据库5.5.8版本开始,InnoDB存储引擎是默认的储存引擎。InnoDB存储引擎将数据放在一个逻辑的表空间中,这个表空间就像黑盒一样由InnoDB存储引擎自身进行管理。从MySQL4.1版本开始,它可以将每个Inn
2020-04-14 / 0 comments

简单工厂(Simple Factory)

为什么考虑一个简单的软件应用场景,一个软件系统可以提供多个外观不同的按钮(如圆形按钮、矩形按钮、菱形按钮等),这些按钮都源自同一个基类,不过在继承基类后不同的子类修改了部分属性从而使得它们可以呈现不同
2020-04-04 / 0 comments

单例(Singleton)

为什么单例模式属于创建型模式的一种。在应用这个模式时,单例对象的类必须保证只有一个实例存在。许多时候整个系统只需要拥有一个的全局对象,这样有利于我们协调系统整体的行为。比如在某个服务器程序中,该服务器
2020-04-02 / 0 comments

MySQL必知必会

DML(DataManipulationLanguage)数据操纵语言:适用范围:对数据库中的数据进行一些简单操作,如insert,delete,update,select等.DDL(DataDefi
2020-03-31 / 0 comments

二叉树的遍历

遍历方式前序遍历根左右中序遍历左根右后续遍历左右根深度优先遍历从根节点开始先遍历先遍历左子树在遍历右子树广度优先遍历按层遍历例子这是一个二叉树前序遍历1,3,4,2,5中序遍历4,3,2,1,5后序遍
2020-03-20 / 0 comments

Spring中的事务

事务管理对于服务来说是至关重要的,它可以保证用户每一次操作都是可靠的,即便出现了异常的访问,也不至于破坏后台数据的完整性。就想银行的ATM机一样通常情况下可以为用户提供正常的服务,但是也难免遇到操作过程中突然发生故障的情况,此时,事务就必须确保出故障前对账户的操作不生效,就像用户刚才完全没有使用过取款机一样,以保证用户和银行的利益都不熟损失。在Spring中事务是通过TransactionDefi
2020-03-05 / 0 comments

MySQL中的事务特性

事务事务就是以可控的方式对数据资源进行访问的一组操作。为了保证事务执行前后,数据资源所承载的系统状态始终处于“正确”状态,事务本身持有4个限定属性,原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)和持久性(Durability),这也就是常说的事务的ACID属性。原子性(Atomicity)一个事务包含多个操作,这些操作要么全部执行,要么全都不执行。实现
2020-03-03 / 0 comments

Docker 初体验

环境Ubuntu 18.04.4 TLSDocker环境安装更新依赖sudo apt-get updatesudo apt-get upgrade卸载旧版本的Docker环境sudo apt-get remove docker docker-engine docker.io containerd runc导入Linux依赖库sudo apt-get install \ apt-transpo
2020-02-29 / 0 comments

fail-fast 和 fail-safe

fail-fastWikiPediaIn systems design, a fail-fast system is one which immediately reports at its interface any condition that is likely to indicate a failure. Fail-fast systems are usually designed to
2020-02-22 / 0 comments

集合List LinkedList源码分析

前言LinkedList是Java中双向链表的实现,它实现了List接口并且允许内部元素为空,学过数据结构的同学很清楚,讲数据结构时第一个学的是数组接下来是链表,老师会把链表和数组做对比他们都属于线性
2020-02-16 / 0 comments

集合List ArrayList源码分析

前言基于JDK1.8源码List是个接口,里面定义了一些对于List的相关的一些操作,ArrayList底层基于一个Object类型的数组,数组操作的时间复杂度如下OpTime complexityp
2020-02-06 / 0 comments

2019 · 年终总结

开篇就在我写这篇Blog的Title的时候,一直迟疑要不要加上年终二字,毕竟现在已经2020年了哈哈。其实从昨天晚上等着凌晨跨年之前我就一直在想年终总结应该怎么写,写些什么,一直到今天下午我还是打开了Blog的管理页面,操练着我熟悉的键盘。2019年是我的本命年,在我国悠久的历史文化中,一个人会在本命年点儿非常背,其实一直以来我还是非常崇尚科学的,因为我真就不信这个邪。结果....一时语塞。卧槽无
2020-01-01 / 0 comments

快速排序

算法步骤1.选定Pivot中心轴2.将大于Pivot的数字放在Pivot的右边3.将小于Pivot的数字放在Pivot的左边4.分别对左右子序列重复前三步操作时空复杂度时间复杂度O(nlogn)空间复杂度O(logn)算法图解实现public class QuickSort { public int[] sort(int[] sourceArray) { int[] res =
2020-04-12 / 0 comments