Java-usage 重写排序规则一维数组降序12345678910Integer[] arr = {1,3,2};Arrays.sort(arr, new Comparator<Integer>() { // 使用泛型,整型数组需要是Integer封装类 public int compare (Integer o1, Integer o2) { 2021-09-06 技术沉淀 Java
设计模式梳理 总参考资料 设计模式分类Reference 创建型模式:主要用于处理对象的创建,实例化对象; 结构型模式:处理类或对象间的组合。 行为型模式:描述类或对象怎么进行交互和职责分配; 设计模式的七大原则 单一职责原则:一个类负责一项职责; 里氏替换原则:子类扩展而非修改父类功能; 依赖倒置原则:面向接口编程,尽量依赖上层抽象,而非依赖具体; 接口隔离原则:建立单一接口,不要建立庞大臃肿的接口,尽量 2021-09-03 技术沉淀 计算机基础
项目梳理-商城秒杀系统 商城秒杀业务逻辑图 需求点梳理项目简介 & 重点模块梳理该项目是一个高并发场景下的商品秒杀活动。 除了一些边缘模块外,项目核心内容有两个:分别是下单秒杀前的削峰限流,和下单后保证用事务异步更新销量和扣减库存。 削峰限流 削峰限流主要是在用户下单前通过验证、限流等策略大都缓冲、平滑流量的目的。具体实现流程和用到的技术为: 通过增加验证码来平滑访问流量; 通过限制大闸,颁发令牌进行削峰(考虑 2021-08-27 技术沉淀 项目梳理
项目梳理-社区论坛系统 登录模块 登录页面(未登录)开发内容 账号、密码、验证码的显示; 颁发登录凭证(登录凭证是要落库的(ticket)) 页面跳转 开发实现登录: 验证账号、密码、验证码 成功:给客户端颁发登录凭证 失败:跳转到登录页面 退出登录: 将登录凭证的状态改为失效 跳转至网页首页 controller 检测验证码[起初用session来存,后期用redis优化] 检测账号密码[查库 mapper 2021-08-26 技术沉淀 项目梳理
Spring知识点梳理 Spring IoCIoC简介IoC:控制反转(Inversion of Control)容器,是一种设计思想。它意味着将对象交给容器控制,而不是开发者在对象内部控制。IoC是通过DI来实现的。 谁控制谁?IoC容器来控制对象。控制什么?控制了外部资源获取(不只是对象包括比如文件等)为什么是反转?因为由容器帮我们查找及注入依赖对象,对象只是被动的接受依赖对象,所以是反转。什么被反转了?依赖对象的 2021-08-25 技术沉淀 Java
Java多线程梳理 Java多线程并发三要素Java并发的三要素:可见性、原子性、有序性。线程不安全即这三个性质有至少一个被破坏了。 这三个要素分别是什么意思?分别由什么来保障的?即这个东西没有保障才导致的现成安全问题。 接下来,我们先来介绍这三个要素是什么,然后说明是什么最终导致了这三个要素的破坏,进而使线程不安全。最后,再来说Java是如何保证线程安全的。 可见性:一个线程对共享变量的修改,别的线程立即可见。 2021-08-20 技术沉淀 Java
Java-初级&高级特性梳理 OOPOOP的三大特性面向对象的程序设计方法具有三个基本特征:封装、继承、多态。 封装封装:将对象的实现细节隐藏起来,然后通过一些公用方法来暴露该对象的功能。 继承继承是面向对象实现软件复用的重要手段,当子类继承父类后,子类作为一种特殊的父类,将直接获得父类的属性和方法; 多态多态分为编译时多态和运行时多态。 编译时多态表现为重载,重载是同一类下的不同方法,通过同一函数名不同的参数列表表现出对象的 2021-08-19 技术沉淀 Java
分布式系统知识点梳理 CAP 原则CAP定理又称CAP原则,指的是在一个分布式系统中,Consistency(一致性)、 Availability(可用性)、Partition tolerance(分区容错性),最多只能同时三个特性中的两个,三者不可兼得。 Consistency (一致性): “all nodes see the same data at the same time”,即更新操作成功并返回客户端 2021-08-17 技术沉淀 计算机基础
数据库知识点梳理 序数据库设计范式第一范式:(确保每列保持原子性)所有字段值都是不可分解的原子值。 第二范式:(确保表中的每列都和主键相关)在一个数据库表中,一个表中只能保存一种数据,不可以把多种数据保存在同一张数据库表中。 第三范式:(确保每列都和主键列直接相关,而不是间接相关) 数据表中的每一列数据都和主键直接相关,而不能间接相关。 第四范式:要求把同一表内的多对多关系删除。 第五范式:从最终结构重新建立原始结 2021-08-16 技术沉淀 计算机基础
操作系统知识点梳理 操作系统什么是操作系统?操作系统是管理硬件和软件的一种应用程序,它为计算机硬件和软件提供了一种中间层,使应用软件和硬件进行分离,让我们无需关注硬件的实现,把关注点更多放在软件应用上。 操作系统是干什么的?管理计算机资源,这些资源包括 CPU、内存、磁盘驱动器、打印机等。提供一种图形界面,就像我们前面描述的那样,它提供了用户和计算机之间的桥梁。为其他软件提供服务,操作系统与软件进行交互,以便为其分配 2021-08-14 技术沉淀 计算机基础