摘要: 1.线性表的定义 若将线性表记为(a1,...,ai 1,ai,ai+1,...,an),则表中ai 1领先于ai,ai领先于ai+1,称ai 1是ai的直接前驱元素,ai+1是ai的直接后继元素。 线性表元素的个数n(n =0)定义为线性表的长度,当n=0时,称为空表。 2.线性表的顺序存储结构 阅读全文
posted @ 2018-04-08 19:58 CoderFocus 阅读(7900) 评论(6) 推荐(31) 编辑
摘要: [TOC] 写在前面 之前自信撸码时踩了一次小坑,代码如下: 就是这段代码在测试环境抛错,说起来全是泪啊。这段代码的具体业务场景是Websocket即时通讯接收来自客户端的消息,消息以json字符串的形式传输。首先判断是否空字符串,如果不是,为了防止乱码进行Url解码,然后反序列化消息解析成需要的数 阅读全文
posted @ 2018-03-27 19:36 CoderFocus 阅读(11254) 评论(10) 推荐(16) 编辑
摘要: [REPEATABLE READ] 首先设置数据库隔离级别为可重复读(REPEATABLE READ): [REPEATABLE READ]能解决的问题之一 [REPEATABLE READ]隔离级别解决了不可重复读的问题,一个事务中多次读取不会出现不同的结果,保证了可重复读。 还是上一篇中模拟不可 阅读全文
posted @ 2018-03-27 12:11 CoderFocus 阅读(3058) 评论(0) 推荐(1) 编辑
摘要: [READ COMMITTED] 首先设置数据库隔离级别为读已提交(READ COMMITTED): [READ COMMITTED]能解决的问题 我们来看一下为什么[READ COMMITTED]如何解决脏读的问题: 事务1 : 事务2 : 事务1先于事务2执行。 事务1的执行信息 : 事务2的执 阅读全文
posted @ 2018-03-26 20:54 CoderFocus 阅读(3902) 评论(0) 推荐(4) 编辑
摘要: [TOC] 我们自己通过Sql语句模拟场景来验证Mysql InnoDB引擎事务各级隔离级别对应封锁协议的工作机制。在开始实践之前我们需要做一些准备工作。 准备工作 ①准备测试表和测试数据 需要建立一个测试数据表,建表语句: 然后插入一条测试数据: ②关闭数据库事务自动提交 设置完成后我们可以通过下 阅读全文
posted @ 2018-03-26 14:54 CoderFocus 阅读(1417) 评论(0) 推荐(4) 编辑
摘要: [TOC] 序 此篇博客是【眼见为实】系列的第一篇博客,主要从理论上讲了数据库并发可能会出现的问题,解决并发问题的技术——封锁,封锁约定的规则——封锁协议。然后简单说明了数据库事务隔离级别和封锁协议的对应关系。后面的几篇博客都是通过亲身实践探究InnoDB引擎在各个隔离级别下的实现细节。 "【眼见为 阅读全文
posted @ 2018-03-26 14:47 CoderFocus 阅读(4153) 评论(7) 推荐(9) 编辑
摘要: 之前自己一个人负责完成了公司的消息推送服务,和移动端配合完成了扫码登录、订单消息推送、活动消息广播等功能。为了加深自己对Websocket协议的理解,自己通过进行抓包的方式学习了一番。现在分享出来,希望对大家能有所帮助。 Chrome控制台 (1)F12进入控制台,点击Network,选中ws栏,注 阅读全文
posted @ 2018-03-15 19:18 CoderFocus 阅读(98630) 评论(10) 推荐(30) 编辑
摘要: [TOC] 我看依赖注入 new代码味道——狎昵(xia ni)关系:过分亲近 这个主题是我比较想重点聊聊的,因为我个人的理解是依赖注入思想最终想解决的问题就是消除对象之间的耦合,再通俗一点讲就是 消除new代码味道 ,解决的指导思想是 将组件的配置和使用分离 。 什么是代码味道? 如果某段代码可能 阅读全文
posted @ 2018-03-15 10:53 CoderFocus 阅读(3297) 评论(7) 推荐(22) 编辑
摘要: 5 复杂查询 5.1 视图 1.表和视图的区别表:保存的是实际的数据视图:保存的是SELECT语句。从视图读取数据时,视图会在内部执行该SELECT语句并创建出一张临时表。 2.视图的优点① 无需保存数据,因此可以节省存储设备的容量。② 可以将频繁使用的SELECT语句保存成视图。 3.创建视图CR 阅读全文
posted @ 2017-12-20 08:16 CoderFocus 阅读(424) 评论(0) 推荐(0) 编辑
摘要: 4 数据更新 4.1数据的插入 1.清单{①列清单 ②值清单列清单和值清单的数量必须保持一致。原则上,执行一次INSERT语句会插入一行数据对表进行全列INSERT时,可以省略表名后的列清单2.插入默认值(默认值)①显式插入: INSERT INTO ProductIns (product_id,p 阅读全文
posted @ 2017-12-19 22:22 CoderFocus 阅读(347) 评论(0) 推荐(1) 编辑