摘要: 什么是统一建模语言,来看看百科中的介绍统一建模语言(Unified Modeling Language,UML)是一种为面向对象系统的产品进行说明、可视化和编制文档的一种标准语言,是非专利的第三代建模和规约语言。UML是面向对象设计的建模工具,独立于任何具体程序设计语言。简单来说UML就是脱离于具体 阅读全文
posted @ 2022-09-14 16:22 王若伊_恩赐解脱 阅读(373) 评论(1) 推荐(1) 编辑
摘要: 前面两篇文章主要介绍了,快慢指针在链表环中的应用。除此之外,我们还常常利用快慢指针来查找单向链表中指定位置的节点。常见的经典题目有:1、查找倒数i位置的的节点2、查找中间节点我们依次来看一、查找快慢指针查找单链表中位于倒数第i个位置的元素力扣 剑指 Offer 22. 链表中倒数第k个节点 (htt 阅读全文
posted @ 2022-09-09 10:49 王若伊_恩赐解脱 阅读(41) 评论(0) 推荐(0) 编辑
摘要: 在上一篇文章(https://www.cnblogs.com/jilodream/p/16666435.html)中,我们已经知道可以通过快慢指针,最终判断一个单向链表是否成环。一般在判断存在环之后,还有一个经典的问题:查找环的起点节点是哪里呢力扣 142. 环形链表 II (https://lee 阅读全文
posted @ 2022-09-08 18:48 王若伊_恩赐解脱 阅读(165) 评论(0) 推荐(0) 编辑
摘要: 双指针是算法中非常重要的一个解决问题的思路。双指针顾名思义,就是有两个指针。根据双指针的方向及速度,我们一般将双指针分为以下几种场景1、快慢双指针2、左右双指针所谓快慢双指针是指,两个指针,一个快指针,一个慢指针,按照相同的方向,从链表(或数组)的一侧移动到另外一侧的场景。 如下图: 而左右双指针, 阅读全文
posted @ 2022-09-07 16:54 王若伊_恩赐解脱 阅读(246) 评论(0) 推荐(2) 编辑
摘要: Json格式在后台服务中的重要性就不多说了,直入正题。首先引入pom文件,这里使用的是1.2.83版本 1 <dependency> 2 <groupId>com.alibaba</groupId> 3 <artifactId>fastjson</artifactId> 4 <version>1.2 阅读全文
posted @ 2022-08-19 00:53 王若伊_恩赐解脱 阅读(508) 评论(0) 推荐(2) 编辑
摘要: 在过往的后台开发中,我们往往使用java自带的线程或线程池,来进行异步的调用。这对于效果来说没什么,甚至可以让开发人员对底层的状况更清晰,但是对于代码的易读性和可维护性却非常的差。开发人员在实际使用过程中,应该更多的将精力放置在业务代码的书写过程中,而不是系统代码的维护中。你需要懂,但是不需要你直接 阅读全文
posted @ 2022-08-16 20:00 王若伊_恩赐解脱 阅读(566) 评论(0) 推荐(3) 编辑
摘要: 背景:我使用的版本是IDEA ultimate 2019.2 版本印象中,最初安装的时候,商店还是可以用的,突然有一天,就无法使用了。下边直入正题: 解决办法:1、首先浏览器登陆下:https://plugins.jetbrains.com/判断是否和idea插件的网站,网络是连接通畅的。如果OK, 阅读全文
posted @ 2021-12-06 10:52 王若伊_恩赐解脱 阅读(557) 评论(0) 推荐(0) 编辑
摘要: 在开始讲述原理的情况下,我们先来做个知识汇总,究竟什么是主从,为什么要搞主从,可以怎么实现主从,mysql主从同步的原理1、什么是主从其实主从这个概念非常简单主机就是我们平常主要用来读写的服务,我们称之为master(主人、主宰)从机就是主机进行的一个扩展,他一般不会主动用来读写,我们称之为slav 阅读全文
posted @ 2021-08-26 00:10 王若伊_恩赐解脱 阅读(1363) 评论(0) 推荐(1) 编辑
摘要: 限流是啥?维基百科是这样解释的:在计算机网络中,频率限制被应用在控制网络接口收到或发送的请求频次,它可以被用来阻止dos攻击或者是网络爬虫。直白点说,就是限制服务收到或发出的请求频次,保证整体服务可以正常健康的使用。谈到这里有人会想,只要我服务处理的速度足够快,那么频次高点也没问题,而且我们做的系统 阅读全文
posted @ 2021-08-25 00:50 王若伊_恩赐解脱 阅读(584) 评论(2) 推荐(0) 编辑
摘要: 类加载过程本质上就是类加载器根据类的全限定名称去找到对应的class字节码文件内容,然后将字节码文件的内容加载到虚拟机方法区中的过程。所以我们大体上可以把类加载的过程分为三部分:1、加载,就是获取到class文件的内容2、链接,就是把相应的文件内容添加到虚拟机中,转变为虚拟机中的class对象,使虚 阅读全文
posted @ 2021-08-13 01:44 王若伊_恩赐解脱 阅读(993) 评论(0) 推荐(1) 编辑
摘要: 布隆过滤器是1970年由布隆提出的。他其实是一个很长的二进制向量外加一系列的随机函数函数来组成。 在正式说到布隆过滤器时,我们要先聊这样一个话题:在解决工程类问题时,很多问题的回答并不是只有这两种布尔状态:是 or 否而可能是这两种状态:一定没有 or 可能有亦或者可能是这两种状态:一定有 or 可 阅读全文
posted @ 2021-08-12 02:28 王若伊_恩赐解脱 阅读(730) 评论(0) 推荐(1) 编辑
摘要: C++为什么叫C plus plus?这是由于C++相当于继承C的语法后,增加了各方面的能力,所扩展出的一种新语法。在软件领域中 plus 有增加的味道。在这里B +树也一样,是B树的增强版。在学习B+树之前,最好是对B树有一定的了解。不了解的各位也没有关系,可以花费5分钟的时间读我的上一篇文章《数 阅读全文
posted @ 2021-01-22 14:46 王若伊_恩赐解脱 阅读(242) 评论(0) 推荐(0) 编辑
摘要: 数据结构相对来说比较枯燥, 我尽量用最易懂的话,来把B树讲清楚。学过数据结构的人都接触过一个概念 二叉树。简单来说,就是每个父节点最多有两个子节点。为了在二叉树上更快的进行元素的查找,人们通过不断的改进,从而设计出一种高效搜索的树 平衡二叉查找树,也就是这个样子: 平衡二叉查找树的特性由于不是本文的 阅读全文
posted @ 2021-01-06 19:52 王若伊_恩赐解脱 阅读(420) 评论(2) 推荐(3) 编辑
摘要: 之前我们谈到过,数据库通过调整事务之间的隔离级别来提高事务的性能。那么接下来,我们来首先说说事务之间可能互相遇到的问题。 大家都知道事务只有提交后,才会真正的持久化到硬盘,倘若出现出现了回滚的操作,则事务所有操作的影响都会被回退掉。那么假若事务在执行过程中,其他事务读取到了当前的操作结果,但是当前事 阅读全文
posted @ 2021-01-04 19:59 王若伊_恩赐解脱 阅读(510) 评论(0) 推荐(1) 编辑
摘要: 如果你是一名后台程序员开发,那么你一定或多或少的接触过事务。因为相对于高并发,且业务有一定复杂性的系统来说,事务是一定需要的,而且是必须的。他可以帮助我们将若干不同的子任务当成一个整体来完成,以保证整个业务的正确性。举个简单的例子:在七夕这天,你给你的女票发了一个520红包对于钱款转移的这个过程来说 阅读全文
posted @ 2021-01-04 11:49 王若伊_恩赐解脱 阅读(676) 评论(0) 推荐(1) 编辑