自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

做你的时光机的博客

新入行的码农

  • 博客(6)
  • 收藏
  • 关注

原创 设计模式:工厂方法模式

定义:定义一个用于创建对象的接口,让字类决定实现哪一个类型,factory method 使得一个类的实例化延迟到字类1.工厂方法模式遵守软件设计原则(close-open)开闭原则:对拓展开放,对修改关闭2.单一职责原则:各个对象固定自己的原则应用场景: 1.当你不知道该使用对象的确切类型的时候 2.当你希望为库或者框架提供可拓展的内部组件的方法时主要优点: 1.将具体的产品业务和创建解耦 2.符合单一职责原则 3.符合开闭原则源码中的...

2021-04-23 17:43:14 164

原创 mysql索引建立规则

索引设计原则1、代码先行,索引后上不知大家一般是怎么给数据表建立索引的,是建完表马上就建立索引吗?这其实是不对的,一般应该等到主体业务功能开发完毕,把涉及到该表相关sql都要拿出来分析之后再建立索引。2、联合索引尽量覆盖条件比如可以设计一个或者两三个联合索引(尽量少建单值索引),让每一个联合索引都尽量去包含sql语句里的where、order by、group by的字段,还要确保这些联合索引的字段顺序尽量满足sql查询的最左前缀原则。3、不要在小基数字段上建立索引索引基数是指这

2021-04-23 15:59:39 1419

原创 mysql索引优化

Explain: 使用该关键词可以进行索引分析关键字:filtered ,partitions ,id ,select_type ,type ,possible_keys ,key ,key_len ,Extra filtered:rows*filtered/100 算出当前表和其他关联表的行数partitions:分区表id:执行的先后顺序,id越大,执行的优先级越高,否则越低select_type: SIMPLE:简单查询 primary:复杂查询中最外层的sel...

2021-04-20 19:13:23 1218

原创 设计模式:单例模式

保证一个类只有一个实例,并提供一个全局访问点单例模式可以通过反射暴力破坏单例懒汉式:延时加载方案,在使用时再创建package com.xiaobai.dataStructure.ssingleton;/** * 单例模式 懒汉式 * 无法防止反射暴力获取对象 * @Author xiaoBai * @Date 2021-04-20 */public class LazySingleton { private volatile static LazySinglet

2021-04-20 18:17:42 173 2

原创 mysql索引底层数据结构和算法

一:mysql底层包含的数据结构红黑树 二叉树 hash B+树二:索引的概念:索引是帮助mysql高效获取数据的排好顺序的数据结构三:mysql底层为什么使用innodb二叉树 :单边自增的列对于查找效率没有提升,连续数据会转为链表 红黑树 :树高度不可控,自平衡后会有很多叶子节点 B树 :相对于B+树来说没有双向指针,区间检索效率会比B+效率低,而且父节点会有数据存储,B+树所有的数据都存在于叶子节点 B+树 :B+树在叶子节点有双向指针 ,特点排好序的数据,通过指针获取所有

2021-04-19 14:16:46 107

原创 数据结构和算法

判断一个数是否为2的指数幂 /** * 判断一个正整数是否为2的指数幂 * @param n * @return */ private static boolean if2(int n){ // & 转2进制之后,判断两个位置比对 都为1为1 否则为0 return (n & (n - 1)) == 0; }...

2021-04-09 16:49:38 67

空空如也

空空如也

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

TA关注的人

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