01 2022 档案

摘要:冒泡排序: 冒泡排序是一种稳定排序算法,时间复杂度为O(n^2).基本思想是:「循环遍历多次每次从前往后把大元素往后调,每次确定一个最大(最小)元素,多次后达到排序序列。」(或者从后向前把小元素往前调)。 具体思想为(把大元素往后调): 从第一个元素开始往后遍历,每到一个位置判断是否比后面的元素大, 阅读全文
posted @ 2022-01-27 15:04 KLAPT 阅读(65) 评论(0) 推荐(0) 编辑
摘要:1. InnoDB: InnoDB是一个将表中的数据存储到磁盘上的存储引擎 InnoDB读写数据: InnoDB处理数据的过程是发生在内存中的,需要把磁盘中的数据加载到内存中,如果是处理写入或修改请求的话,还需要把内存中的内容刷新到磁盘上。 读写磁盘的速度非常慢,和内存读写差了几个数量级,所以当我们 阅读全文
posted @ 2022-01-27 10:28 KLAPT 阅读(220) 评论(0) 推荐(0) 编辑
摘要:分布式锁的使用场景 效率性:使用分布式锁可以避免不同节点重复相同的工作。 正确性:分布式锁可以避免破坏正确性的发生,如果两个节点在同一条数据上面操作,比如多个节点机器对同一个订单操作不同的流程有可能会导致该笔订单最后状态出现错误,造成损失。 分布式锁的几种特性 互斥性:和我们本地锁一样互斥性是最基本 阅读全文
posted @ 2022-01-19 11:05 KLAPT 阅读(96) 评论(0) 推荐(0) 编辑
摘要:定义: 为子系统中的一组接口提供一个一致的界面,Facade模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。 角色: 1,外观(Facade)角色 :客户端可以调用这个角色的方法。此角色知晓相关子系统的功能和责任。在正常情况下,本角色会将所有从客户端发来的请求委派到相应的子系统去。 2, 阅读全文
posted @ 2022-01-18 14:34 KLAPT 阅读(12) 评论(0) 推荐(0) 编辑
摘要:Socket 是什么以及创建过程: 一个数据包经由应用程序产生,进入到协议栈中进行各种报文头的包装,然后操作系统调用网卡驱动程序指挥硬件,把数据发送到对端主机。 应用程序包含 Socket 和解析器,解析器的作用就是向 DNS 服务器发起查询,查询目标 IP 地址。 应用程序的下面就是操作系统内部, 阅读全文
posted @ 2022-01-17 14:30 KLAPT 阅读(93) 评论(0) 推荐(0) 编辑
摘要:分页功能 mybatis的分页默认是基于内存分页的(查出所有,再截取),数据量大的情况下效率较低,不过使用mybatis插件可以改变该行为,只需要拦截StatementHandler类的prepare方法,改变要执行的SQL语句为分页语句即可。 公共字段统一赋值 一般业务系统都会有创建者,创建时间, 阅读全文
posted @ 2022-01-14 17:03 KLAPT 阅读(43) 评论(0) 推荐(0) 编辑
摘要:IOC 容器的原理 IOC 容器其实就是一个大工厂,它用来管理我们所有的对象以及依赖关系。 原理就是通过 Java 的反射技术来实现的!通过反射我们可以获取类的所有信息(成员变量、类名等等等)! 再通过配置文件(xml)或者注解来描述类与类之间的关系 我们就可以通过这些配置信息和反射技术来构建出对应 阅读全文
posted @ 2022-01-14 16:01 KLAPT 阅读(85) 评论(0) 推荐(0) 编辑
摘要:1.数据加密 我们知道数据在传输过程中是很容易被抓包的,如果直接传输比如通过http协议,那么用户传输的数据可以被任何人获取;所以必须对数据加密,常见的做法对关键字段加密比如用户密码直接通过md5加密;现在主流的做法是使用https协议,在http和tcp之间添加一层加密层(SSL层),这一层负责数 阅读全文
posted @ 2022-01-13 16:23 KLAPT 阅读(58) 评论(0) 推荐(0) 编辑
摘要:定义: 为其他对象提供一种代理以控制对这个对象的访问。在某些情况下,一个对象不适合或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用. 角色: 1, 抽象角色:声明真实对象和代理对象的共同接口。 2, 代理角色:代理对象角色内部含有对真实对象的引用,从而可以操作真实对象, 阅读全文
posted @ 2022-01-13 16:05 KLAPT 阅读(18) 评论(0) 推荐(0) 编辑
摘要:volatile是Java提供的一种轻量级的同步机制。Java 语言包含两种内在的同步机制:同步块(或方法)和 volatile 变量,相比于synchronized(synchronized通常称为重量级锁),volatile更轻量级,因为它不会引起线程上下文的切换和调度。但是volatile 变 阅读全文
posted @ 2022-01-12 15:42 KLAPT 阅读(95) 评论(0) 推荐(0) 编辑
摘要:定义: 在不必改变原类文件和原类使用的继承的情况下,动态地扩展一个对象的功能。 它是通过创建一个包装对象,也就是用装饰来包裹真实的对象来实现。 角色: 抽象构件角色(Project):给出一个接口,以规范准备接收附加责任的对象。 具体构件角色(Employe):定义一个将要接收附加责任的类。 装饰角 阅读全文
posted @ 2022-01-12 10:17 KLAPT 阅读(16) 评论(0) 推荐(0) 编辑
摘要:定义: 将一个类的接口转换成客户希望的另外一个接口。适配器模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。 角色: 目标(Target)角色:这就是所期待得到的接口,也就是这类的接口是符合我们要求的。 源(Adapee)角色:我们要使用的接口,但是这个接口不符合我们的要求,也就是现在需 阅读全文
posted @ 2022-01-12 10:07 KLAPT 阅读(44) 评论(0) 推荐(0) 编辑
摘要:定义: 将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。生成器模式利用一个导演者对象和具体建造者对象一个一个地建造出所有的零件,从而建造出完整的对象。 四个要素: Builder:生成器接口,定义创建一个Product对象所需要的各个部件的操作。 ConcreteBuild 阅读全文
posted @ 2022-01-11 17:44 KLAPT 阅读(50) 评论(0) 推荐(0) 编辑
摘要:地址找不到:No provider available (1)Provider 服务没启动,或者注册中心(比如 ZooKeeper,Nacos,Consul)宕机了 (2)Dubbo 的服务配置有误差,必须保证服务名,组别(默认是 Dubbo ),version 三者都正确 (3)访问的环境有误:通 阅读全文
posted @ 2022-01-11 14:28 KLAPT 阅读(694) 评论(0) 推荐(0) 编辑
摘要:ApiPost : ApiPost=Postman + Swagger + Mock https://www.apipost.cn/download.html?fr=jvbc Apifox: Apifox = Postman + Swagger + Mock + JMeter 阅读全文
posted @ 2022-01-11 14:17 KLAPT 阅读(1537) 评论(0) 推荐(0) 编辑
摘要:各层说明 「config 配置层」:对外配置接口,以 ServiceConfig, ReferenceConfig 为中心,可以直接初始化配置类,也可以通过 spring 解析配置生成配置类 「proxy 服务代理层」:服务接口透明代理,生成服务的客户端 Stub 和服务器端 Skeleton, 以 阅读全文
posted @ 2022-01-10 17:55 KLAPT 阅读(25) 评论(0) 推荐(0) 编辑
摘要:#{}匹配的是一个占位符,相当于JDBC中的一个?,会对一些敏感的字符进行过滤,编译过后会对传递的值加上双引号,因此可以防止SQL注入问题。 ${}匹配的是真实传递的值,传递过后,会与sql语句进行字符串拼接。${}会与其他sql进行字符串拼接,不能预防sql注入问题。 为什么能防止SQL注入: P 阅读全文
posted @ 2022-01-07 10:15 KLAPT 阅读(117) 评论(0) 推荐(0) 编辑
摘要:定义: 通过复制现有的对象实例来创建新的对象实例。 实现: 实现Cloneable接口: Cloneable接口的作用是在运行时通知虚拟机可以安全地在实现了此接口的类上使用clone方法。在java虚拟机中,只有实现了这个接口的类才可以被拷贝,否则在运行时会抛出CloneNotSupportedEx 阅读全文
posted @ 2022-01-06 17:40 KLAPT 阅读(5) 评论(0) 推荐(0) 编辑
摘要:Podman 是一个开源的容器运行时项目,可在大多数 Linux 平台上使用。Podman 提供与 Docker 非常相似的功能。 Podman 官网地址:https://podman.io/ Podman和Docker的主要区别 dockers在实现CRI的时候,它需要一个守护进程,其次需要以ro 阅读全文
posted @ 2022-01-06 10:49 KLAPT 阅读(496) 评论(0) 推荐(0) 编辑
摘要:WebSocket 是一种在单个TCP连接上进行全双工通信的协议。WebSocket 使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送数据. 在 WebSocket API 中,浏览器和服务器只需要完成一次握手,两者之间就直接可以创建持久性的连接, 并进行双向数据传输。 We 阅读全文
posted @ 2022-01-05 15:44 KLAPT 阅读(568) 评论(0) 推荐(0) 编辑
摘要:1.1 JMS JMS 全称 Java Message Service,类似于 JDBC,不同于 JDBC,JMS 是 JavaEE 的消息服务接口。 JMS 作为规范,他只是一套接口,并不包含具体的实现,如果我们要使用 JMS,那么一般还需要对应的实现。 1.1.2 JMS 模型 JMS 消息服务 阅读全文
posted @ 2022-01-05 09:55 KLAPT 阅读(55) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示