自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(128)
  • 资源 (1)
  • 问答 (2)
  • 收藏
  • 关注

转载 mysql执行计划各个字段的含义

mysql执行计划各个字段的含义

2022-10-08 10:54:33 763

原创 【docker从0入门 学习笔记】docker网络

docker网络docker0docker0Docker中所有网络接口都是虚拟的,通过Linux的虚拟网络技术veth-pair实现。

2022-04-15 00:06:23 1000

原创 【docker从0入门 学习笔记】基础篇

(一)docker基础入门1.docker概述​ docker(go语言开发)是基于硬件层面的容器化技术,解决了虚拟机消耗硬件资源大的痛点,是一种轻量化的虚拟机(内核级别的虚拟化)。一个容器可以由我们自定义环境,并且容器是可复制可迁移的可发布云端的,这样的特性广泛使用在服务端的**“弹性、负载、容灾”**。并且由于容器化的成熟,推动devops的快速发展,解决传统开发人员与运维人员之间的磨擦点。​ 文档地址​ 仓库地址​ 本文将讲解docker的基础使用。[外链图片转存失败,源站可能有防盗链机制

2021-12-12 14:43:21 1000

转载 《mark》ServiceMesh和Serverless和Server

转载:https://blog.csdn.net/baichoufei90/article/details/107293203

2021-11-22 19:31:56 224

转载 《mark》《凤凰项目—一个IT运维的传奇故事》整理(读书笔记)

转载:https://www.jianshu.com/p/858a9c3c914f

2021-10-11 01:20:41 270

转载 《mark》浅析 DDD 领域驱动设计

转载:https://blog.csdn.net/qq_14996421/article/details/119849424

2021-09-13 19:04:22 90

转载 《mark》枚举类抵御反射和序列化对单例的攻击

转载:https://blog.csdn.net/weixin_36586120/article/details/105522491

2021-08-28 15:47:02 122

原创 《java多线程设计模式》之(一)监控任务的生命周期

概述一般情况下想要获得线程的最终结果,我们不得不为Thread或者Runable任务执行在这一章中,我们通过将监听者模式与线程相结合很好地观察到了任务执行的周期,而且还能灵活方便地解决run方法无法获得线程运行后无返回值的问题。...

2021-08-26 00:57:49 213

转载 《mark》CentOs安装Mysql和配置初始密码

转载:https://www.cnblogs.com/huanghuanghui/p/9679741.html

2021-08-16 00:20:11 94

原创 《代码整洁之道》第十章 类

第十章 类概述1. 类的组织2. 类应该短小2.1 单一权责原则(单一原则)2.2 内聚3.为了修改而组织最后的话概述到目前为止一直在讨论如何编写良好的代码行和代码块。我们深入研究了函数的恰当构成,以及函数之间如何互相关联。不过,尽管讨论了这么多关于代码语句及由代码语句构成的函数的表达力,除非我们将注意力放到代码组织的更高层面,就始终不能得到整洁的代码。本章将展开讨论如何编写一个整洁的类1. 类的组织遵循标准的Java约定:类应该从一组变量列表开始。如果有公共静态常量,应该先出现然后是私有静

2021-06-19 01:32:01 219

原创 《代码整洁之道》第九章 单元测试

待完善。。。

2021-06-18 00:30:40 135

原创 《代码整洁之道》第八章 边界

待完善…

2021-06-18 00:24:05 143

原创 《代码整洁之道》第七章 错误处理

第七章 错误处理概述1. 使用异常而非返回码2. 先写Try-Catch-Finally语句3. 给出异常发生的环境说明4. 包装异常的类型定义系统常规异常处理别返回NULL值最后的话概述错误处理很重要,但如果它搞乱了代码逻辑,就是错误的做法。在本章中,我将概要列出编写既整洁又强固的代码——雅致地处理错误代码的一些技巧和思路1. 使用异常而非返回码在很多以前的语言中(不像java这种异常处理机制),或者错误的写法中,存在有些代码的方法通过返回码判断错误逻辑,这显然是非常严重的错误。eg:2

2021-06-16 23:24:21 216

原创 《代码整洁之道》第六章 对象和数据结构

第六章 对象和数据结构概述1. 数据抽象2. 数据、对象的反对称性3. 得膜忒耳定律4. 数据传送对象最后的话概述将变量设置为私有( private)有一个理由:我们不想其他人依赖这些变量。我们还想在心血来潮时能自由修改其类型或实现。那么,为什么还是有那么多程序员给对象自动添加赋值器和取值器,将私有变量公之于众、如同它们根本就是公共变量一般呢?1. 数据抽象代码清单6-2的漂亮之处在于,你不知道该实现会是在矩形坐标系中还是在极坐标系中。可能两个都不是!然而,该接口还是明白无误地呈现了一种数据结

2021-06-16 20:26:40 238

原创 《代码整洁之道》第五章 格式

第五章 格式概述格式的目的1. 垂直格式1.1 善用短文件1.2 向报纸学习1.3 概念间垂直方向上的间隔1.4 垂直方向上靠近1.5 代码的位置1.5.1 变量声明1.5.2 实体变量1.5.3 相关函数1.5.4 常量1.6 垂直顺序2. 横向格式2.1 代码行尽量短小2.2 水平方向上的区隔和靠近2.3 水平对齐2.4 缩进2.5 空范围3 团队规则概述你应该保持良好的代码格式。你应该选用一套管理代码格式的简单规则,然后贯彻这规则。如果你在团队中工作,则团队应该一致同意采用一套简单的格式规则,所

2021-06-15 21:48:23 250

原创 《代码整洁之道》第四章 注释

第四章 注释概述1. 好的注释1.1 法律信息1.2 提供信息的注释1.3 对意图的解释1.4 阐释1.5 警示1.6 TODO 注释1.7 放大1.8 公共API中的Javadoc2. 坏的注释2.1 喃喃自语2.2 多余的注释2.3 误导性注释2.4 循规式注释2.5 日志式注释2.6 废话注释2.7 位置标记2.8 归属与书名2.9 注释掉的代码2.10 非本地信息2.11 信息过多2.12 不明显的联系2.13 函数头2.14 非公共代码的Javadoc概述什么也比不上放置良好的注释来得有用。

2021-06-14 21:42:32 754

原创 《代码整洁之道》第三章 函数

第三章 函数概述规则1. 短小2. 每个函数一个抽象层,只做一件事3. switch语句4. 使用描述性的名称5. 函数参数5.1 不要写标志参数5.2 二元函数5.3 三元函数5.4 参数对象5.5 参数列表6. 无副作用7. 分隔指令与询问8. 使用异常替代返回错误码8.1 抽离Try/Catch代码块8.2 错误处理就是一件事8.3 Error.java的依赖磁铁9. 别重复自己10.最后的话概述在编程的早年岁月,系统由程序和子程序组成。后来,在 Fortran和PL/1的年代,系统由程序、子程序

2021-06-14 14:38:16 481

原创 《代码整洁之道》第二章 有意义的命名

第二章 有意义的命名概述规则1. 名副其实2. 避免误导3. 做有意义的区分4. 使用读的出来的名称5. 使用可搜索的词汇6. 避免使用编码7. 避免映射思维8. 类名9. 方法名10.别使用俗语11. 每个概念对应一个词12. 别用双关语13. 使用解决方案领域名称14. 使用源自所涉问题领域的名称15. 添加有意义的语境最后的话概述软件中随处可见命名。我们给变量、函数、参数、类和封包命名。我们给源代码及源代码所在目录命名。我们给jar文件、war文件和ear文件命名。我们命名、命名,不断命名。既然

2021-06-10 23:22:50 269

原创 《代码整洁之道》第一章 整洁代码 ---为什么需要整洁代码?

第一章 整洁代码概述什么是整洁代码?开始走向整洁代码概述欢迎阅读本栏目的读者,如果你想成为更加优秀的coder,请跟随笔者的观点去解析《代码整洁之道》这本书,相信你会收获颇丰。软件质量,不但依赖于架构及项目管理,而且与代码质量紧密相关。这一点,无论是敏捷开发流派还是传统开发流派,都不得不承认。本书提出一种观念:代码质量与其整洁度成正比。干净的代码,既在质量上较为可靠也为后期维护、升级奠定了良好基础。作为编程领域的佼佼者,本书作者给出了一系列行之有效的整洁代码操作实践。这些实践在本书中体现为一条条规

2021-06-09 22:46:20 363

翻译 (2021总结篇)面向对象软件设计模式(二十三)访问者模式

访问者模式访问者模式的意图,解决的问题,什么时候使用1.访问者模式2.访问者模式中的角色3.模板方法优缺点、使用场景优点:缺点:适用场景:访问者模式的意图,解决的问题,什么时候使用在现实生活中,有些集合对象存在多种不同的元素,且每种元素也存在多种不同的访问者和处理方式。例如,公园中存在多个景点,也存在多个游客,不同的游客对同一个景点的评价可能不同;医院医生开的处方单中包含多种药元素,査看它的划价员和药房工作人员对它的处理方式也不同,划价员根据处方单上面的药品名和数量进行划价,药房工作人员根据处方单的内容

2021-06-02 21:56:49 208

翻译 (2021总结篇)面向对象软件设计模式(二十二)模板方法

模板方法模板方法的意图,解决的问题,什么时候使用1.模板方法2.模板方法中的角色抽象类/抽象模板(Abstract Class)具体子类/具体实现(Concrete Class)时候钩子函数反向控制3.模板方法优缺点、使用场景优点:缺点:适用场景:模板方法的意图,解决的问题,什么时候使用在面向对象程序设计过程中,程序员常常会遇到这种情况:设计一个系统时知道了算法所需的关键步骤,而且确定了这些步骤的执行顺序,但某些步骤的具体实现还未知,或者说某些步骤的实现与具体的环境相关。例如,去银行办理业务一般要经过

2021-06-01 23:56:39 267

翻译 (2021总结篇)面向对象软件设计模式(二十一)策略模式

算法的封装与切换--策略模式策略模式的意图,解决的问题,什么时候使用1.策略模式2.策略模式中的角色3.策略模式优缺点、使用场景优点:缺点:适用场景:策略模式的意图,解决的问题,什么时候使用在现实生活中常常遇到实现某种目标存在多种策略可供选择的情况,例如,出行旅游可以乘坐飞机、乘坐火车、骑自行车或自己开私家车等,超市促销可以釆用打折、送商品、送积分等方法。在软件开发中也常常遇到类似的情况,当实现某一个功能存在多种算法或者策略,我们可以根据环境或者条件的不同选择不同的算法或者策略来完成该功能,如数据排序

2021-06-01 23:15:41 474

翻译 (2021总结篇)面向对象软件设计模式(二十)状态模式

处理对象的多种状态及其互相转换--状态模式状态模式的意图,解决的问题,什么时候使用1.状态模式2.状态模式中的角色3.状态模式优缺点、使用场景优点:缺点:适用场景:状态模式的意图,解决的问题,什么时候使用在软件开发过程中,应用程序中的部分对象可能会根据不同的情况做出不同的行为,我们把这种对象称为有状态的对象,而把影响对象行为的一个或多个动态变化的属性称为状态。当有状态的对象与外部事件产生互动时,其内部状态就会发生改变,从而使其行为也发生改变。如人都有高兴和伤心的时候,不同的情绪有不同的行为,当然外界也会

2021-05-31 23:32:28 205

翻译 (2021总结篇)面向对象软件设计模式(十九)观察者模式

对象间的联动--观察者模式观察者模式的意图,解决的问题,什么时候使用1.观察者模式2.观察者模式中的角色3.备忘录模式扩展多次撤销如何实现封装性4.备忘录模式优缺点、使用场景优点:缺点:适用场景:观察者模式的意图,解决的问题,什么时候使用在现实世界中,许多对象并不是独立存在的,其中一个对象的行为发生改变可能会导致一个或者多个其他对象的行为也发生改变。例如,某种商品的物价上涨时会导致部分商家高兴,而消费者伤心;还有,当我们开车到交叉路口时,遇到红灯会停,遇到绿灯会行。这样的例子还有很多,例如,股票价格与股

2021-05-28 00:41:20 183

翻译 (2021总结篇)面向对象软件设计模式(十八)备忘录模式

备忘录模式备忘录模式的意图,解决的问题,什么时候使用1.备忘录模式2.备忘录模式中的角色3.备忘录模式扩展多次撤销如何实现封装性4.备忘录模式优缺点、使用场景优点:缺点:适用场景:备忘录模式的意图,解决的问题,什么时候使用个人都有犯错误的时候,都希望有种“后悔药”能弥补自己的过失,让自己重新开始,但现实是残酷的。在计算机应用中,客户同样会常常犯错误,能否提供“后悔药”给他们呢?当然是可以的,而且是有必要的。这个功能由“备忘录模式”来实现。其实很多应用软件都提供了这项功能,如 Word、记事本、Phot

2021-05-26 22:33:32 207

翻译 (2021总结篇)面向对象软件设计模式--(十七)行为型模式---协调多个对象之间的交互--中介者模式

中介者模式中介者模式的意图,解决的问题,什么时候使用1.中介者模式2.中介者模式中的角色3.中介者模式优缺点、使用场景优点:缺点:适用场景:中介者模式的意图,解决的问题,什么时候使用在现实生活中,常常会出现好多对象之间存在复杂的交互关系,这种交互关系常常是“网状结构”,它要求每个对象都必须知道它需要交互的对象。例如,每个人必须记住他(她)所有朋友的电话;而且,朋友中如果有人的电话修改了,他(她)必须让其他所有的朋友一起修改,这叫作“牵一发而动全身”,非常复杂。如果把这种“网状结构”改为“星形结构”的话

2021-05-25 00:25:29 228

翻译 (2021总结篇)面向对象软件设计模式--(十六)行为型模式---遍历聚合对象中的元素--迭代器模式

迭代器模式迭代器模式的意图,解决的问题,什么时候使用1.迭代器模式1.1 文法1.2 句子1.3 语法树2.解释器模式中的角色3.解释器模式优缺点、使用场景优点:缺点:适用场景:迭代器模式的意图,解决的问题,什么时候使用在软件开发中,会遇到有些问题多次重复出现,而且有一定的相似性和规律性。如果将它们归纳成一种简单的语言,那么这些问题实例将是该语言的一些句子,这样就可以用“编译原理”中的解释器模式来实现了。虽然使用解释器模式的实例不是很多,但对于满足以上特点,且对运行效率要求不是很高的应用实例,如果用解

2021-05-18 19:42:14 205

原创 Effective Java 【类和接口】第18条 复合优先于继承

目录前言如何解决问题什么是复合总结前言在包的内部使用继承是非常安全的,在那里子类和超类的实现都处在同一个程序员的控制之下。对于专门为了继承而设计并且具有很好的文档说明的类来说(详见第19条),使用继承也是非常安全的。然而,对普通的具体类进行跨越包边界的继承,则是非常危险的。其原因主要是因为:与方法调用不同的是,继承打破了封装性。子类依赖于其超类中特定功能的实现细节。如果超类中的实现改变,就有可能给子类的逻辑带来很大的危害。因而,子类必须要跟着其超类的更新而演变,除非超类是专门为了扩展而设计的,并且

2021-04-28 23:44:51 108

原创 Effective Java 【类和接口】第17条 使可变性最小化

目录前言不可变类的五条规则java中如何控制对于顶层的(非嵌套的)类和接口对于成员(域、方法、嵌套类和嵌套接口)如何确定成员应该用什么修饰符?总结前言不可变类是指其实例不能被修改的类。 每个实例中包含的所有信息都必须在创建该实例的时候就提供,并在对象整个生命周期不变。JDK中有很多例子,String、基本类型的包装类、BigInteger和BigDecimal。不可变的类比可变类更加易于设计、实现和使用。它们不容易出错,且更加安全。不可变类的五条规则不要提供任何会修改对象状态的方法(也称设值方法

2021-04-28 00:28:54 132

原创 Effective Java 【类和接口】第16条 在公共类而非公有域使用访问方法

目录本周总结为一句话,对于共有类(public类),不应该暴露可变数据域,应该提供访问方法。这样无法对数据加以约束,如果使(final)不可变数据域则危害性稍微小一点。常见的做法就是我们通常给变量设置getter和setter方法。class Point { private double x; private double y; public final String z; public Point(double x, double y,String z) {

2021-04-27 22:38:38 80

翻译 (2021总结篇)面向对象软件设计模式--(十五)行为型模式---自定义语言的实现--解释器模式

解释器模式解释器模式的意图,解决的问题,什么时候使用1.解释器模式1.1 文法1.2 句子1.3 语法树2.解释器模式中的角色3.解释器模式优缺点、使用场景优点:缺点:适用场景:解释器模式的意图,解决的问题,什么时候使用在软件开发中,会遇到有些问题多次重复出现,而且有一定的相似性和规律性。如果将它们归纳成一种简单的语言,那么这些问题实例将是该语言的一些句子,这样就可以用“编译原理”中的解释器模式来实现了。虽然使用解释器模式的实例不是很多,但对于满足以上特点,且对运行效率要求不是很高的应用实例,如果用解

2021-04-27 21:23:28 136

翻译 (2021总结篇)面向对象软件设计模式--(十四)行为型模式---请求发送者与接收者解耦--命令模式

命令模式命令模式的意图,解决的问题,什么时候使用1.命令模式2.命令模式中的角色3.命令模式优缺点、使用场景优点:缺点:适用场景:命令模式的意图,解决的问题,什么时候使用在软件开发系统中,“方法的请求者”与“方法的实现者”之间经常存在紧密的耦合关系,这不利于软件功能的扩展与维护。例如,想对方法进行“撤销、重做、记录”等处理都很不方便,因此“如何将方法的请求者与实现者解耦?”变得很重要,命令模式就能很好地解决这个问题。eg1:在现实生活中,命令模式的例子也很多。比如看电视时,我们只需要轻轻一按遥控器就能

2021-04-25 21:26:58 208

翻译 (2021总结篇)面向对象软件设计模式--(十三)行为型模式---请求的链式处理--职责链模式

职责链模式职责链模式的意图,解决的问题,什么时候使用1.职责链模式2.职责链模式中的角色纯职责链不纯职责链3.职责链模式优缺点、使用场景优点:缺点:适用场景:职责链模式的意图,解决的问题,什么时候使用在现实生活中,一个事件需要经过多个对象处理是很常见的场景。例如,采购审批流程、请假流程等。公司员工请假,可批假的领导有部门负责人、副总经理、总经理等,但每个领导能批准的天数不同,员工必须根据需要请假的天数去找不同的领导签名,也就是说员工必须记住每个领导的姓名、电话和地址等信息,这无疑增加了难度。在计算机软

2021-04-20 22:18:05 180

原创 Effective Java 【类和接口】第15条 使类的成员的可访问行最小化

目录前言java中如何控制对于顶层的(非嵌套的)类和接口对于成员(域、方法、嵌套类和嵌套接口)如何确定成员应该用什么修饰符?总结前言区分一个组件设计得好不好,唯一重要的因素在于,它对于外部的其他组件而言,是否隐藏了其内部数据和其他实现细节。设计良好的组件会隐藏所有的实现细节,把API与实现清晰地隔离开来。这种概念被称为信息隐藏或者封装,是软件设计地基本原则之一。信息隐藏之所以非常重要有许多原因,其中大多是因为:**它可以有效地解除组成系统地各组件之间地耦合关系,即解耦,使得这些组件可以独立地开发、测试

2021-04-19 21:47:41 153 2

翻译 (2021总结篇)面向对象软件设计模式--(十二)结构型模式---代理模式

代理模式代理模式的意图,解决的问题,什么时候使用1.代理模式2.代理模式中的角色3.代理模式优缺点、使用场景优点:缺点:适用场景:4.代理模式的扩展(待完善)4.1 静态代理和动态代理4.2 使用代理模式切换数据源4.3 彻底搞懂JDK动态代理核心原理4.4 代理模式在Spring源码中的应用4.5 代理模式在MyBatis源码中的应用代理模式的意图,解决的问题,什么时候使用在有些情况下,一个客户不能或者不想直接访问另一个对象,这时需要找一个中介帮忙完成某项任务,这个中介就是代理对象。例如,购买火车票不

2021-04-19 20:36:51 162

翻译 (2021总结篇)面向对象软件设计模式--(十一)结构型模式---实现对象的服用--享元模式

外观模式享元模式的意图,解决的问题,什么时候使用1.享元模式2.享元模式中的角色3.享元模式优缺点、使用场景优点:缺点:适用场景:享元模式的意图,解决的问题,什么时候使用在面向对象程序设计过程中,有时会面临要创建大量相同或相似对象实例的问题。创建那么多的对象将会耗费很多的系统资源,它是系统性能提高的一个瓶颈。例如,围棋和五子棋中的黑白棋子,图像中的坐标点或颜色,局域网中的路由器、交换机和集线器,教室里的桌子和凳子等。这些对象有很多相似的地方,如果能把它们相同的部分提取出来共享,则能节省大量的系统资源,

2021-04-13 20:45:49 153 1

翻译 (2021总结篇)面向对象软件设计模式--(十)结构型模式---外观模式(门面模式)

外观模式外观模式的意图,解决的问题,什么时候使用1.外观模式2.外观模式中的角色3.外观模式优缺点、使用场景优点:缺点:适用场景:外观模式的意图,解决的问题,什么时候使用在现实生活中,常常存在办事较复杂的例子,如办房产证或注册一家公司,有时要同多个部门联系,这时要是有一个综合部门能解决一切手续问题就好了。软件设计也是这样,当一个系统的功能越来越强,子系统会越来越多,客户对系统的访问也变得越来越复杂。这时如果系统内部发生改变,客户端也要跟着改变,这违背了“开闭原则”,也违背了“迪米特法则”,所以有必要为

2021-04-13 20:15:41 181

原创 (2021总结篇)面向对象软件设计模式--(九)结构型模式---扩展系统功能--装饰器模式

装饰器模式装饰器模式的意图,解决的问题,什么时候使用1.装饰器模式2.装饰器模式中的角色2.1 透明装饰模式2.2 半透明装饰模式2.3 需要注意的问题3.装饰器模式优缺点、使用场景优点:缺点:适用场景:装饰器模式的意图,解决的问题,什么时候使用有些人早餐可能会吃煎饼,煎饼中可以加鸡蛋,也可以加香肠,但是不管怎么“加码”,都还是一个煎饼。在现实生活中,常常需要对现有产品增加新的功能或美化其外观,如房子装修、相片加相框等,都是装饰器模式。这里的例子总结一下:早餐对象:加鸡蛋,加牛奶…房子对象:装修门

2021-04-10 16:03:35 241

原创 Effective Java 【对于所有对象都通用的方法】第14条 考虑实现Comparable接口

目录Comparable接口接口规约如何重写?总结Comparable接口与本章中讨论的其他方法不同,compareTo方法没有在Object类中声明。相反,它是Comparable接口中唯一的方法。compareTo方法不但允许进行简单的等同比较,而且允许执行顺序比较,除此之外,它与Object的equals方法具有相似的特征,它还是个泛型(generic)。类实现Comparable接口的对象数组进行排序就这么简单。Arrays.sort(a);**一旦类实现了Comparable接口,它就可

2021-04-10 14:01:30 123

原创 Effective Java 【对于所有对象都通用的方法】第13条 谨慎地覆盖clone

目录谨慎地覆盖cloneCloneable接口并没有包含任何方法,那么它到底有什么作用呢?Object类中的clone()方法如何重写好一个clone()方法1.对于数组类型我可以采用clone()方法的递归2.如果对象是非数组,建议提供拷贝构造器(copy constructor)或者拷贝工厂(copy factory)3.如果为线程安全的类重写clone()方法4.如果为需要被继承的类重写clone()方法总结谨慎地覆盖cloneCloneable接口地目的是作为对象的一个mixin接口(详见第20

2021-04-08 23:01:04 151 1

数据库索引设计与优化PDF扫描版,高清PDF

数据库索引设计与优化PDF高清版 第一章: 概述 第二章:表和索引结构 第三章:SQL处理过程 第四章:为SELECT语句创建理想的索引 第五章:前瞻性的索引设计 第六章:影响索引设计过程的因素 第七章:被动式索引设计 第八章:为表连接设计索引 第九章:星型连接 第十章:多索引访问 第十一章:索引和索引重组 第十二章:数据库管理系统相关的索引限制 第十三章:数据库索引选项 第十四章:优化器不是完美的 第十五章:其他评估事项 第十六章:组织索引设计过程 全书一共291页

2019-04-04

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

TA关注的人

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