2021 10-16

MySQL8 根据某属性查询字段排名由自定义变量到rank()的变动

在mysql8之前的版本,因为没有rank()方法的存在,所以在对字段进行排名时,使用的是自定义自变量的方法,比如: selectid,name,@rank=@rank+1asranksfromuseru,(select@rank=0)ranorderbyu.age 自定义一个变量rank用来进行排名,求其中某一个值的排名只需要在外面加一层select就行: selectranksfrom(selectid,name,@rank=@rank+1asranksfromuseru,(selec

2021 10-15

使用Gitolite搭建轻量级的Git服务器

使用Gitolite搭建轻量级的Git服务器 1.添加git用户   useaddgit   passwd    //为git设置密码   2.安装git   yuminstallgit-y   3.安装Gitolite   1.在/home/git/下,mkdirbin  ,  mkdirkey   2.在/home/git/下,gitclonehttps://github.com/sitaramc/gitolite   3.在/ho

2021 10-15

浅析InnoDB引擎的索引和索引原理

浅析InnoDB引擎的索引和索引原理 什么是InnoDB的索引 InnoDB的索引就是一颗B+树。页是InnoDB引擎在内存和磁盘之间交换数据的基本单位,页的大小一般是16KB,页的大小可以在启动MySQL服务的时候通过更改innodb_page_size参数来设置。而InnoDB索引的节点就是页。 B+树的叶节点上的页是数据页,用于存放用户存入数据库中的一条一条的记录,而非叶子节点上的页是索引页,存放索引记录。一个节点存一个页,所以又有”索引就是数据,数据就是索引“之说。B+树同一层上的页又

2021 10-15

【架构设计】无状态状态机在代码中的实践

无状态状态机 一:前言 ​在项目中经常有一些工单,申请之类需要对状态进行流转。这种需求一般都是满足什么条件然后就翻转状态。这些流程结构相似得逻辑,感觉可以抽象处理。用一个通用得结构处理,可以让系统更加整洁,代码逻辑更加单一。 ​发现阿里开源一种,轻量级得无状态状态机得组件。仔细研究一下,确实很适合这种场景下对代码逻辑得解耦,相比于if-else代码更加让人容易理解,也更加优雅。 二:状态机的模型 State:状态 Event:事件,状态由事件触发,引起变化 Transition:流转,表示从一

2021 10-15

Android系统编程入门系列之应用间数据共享ContentProvider

内容提供者ContentProvider与前文的界面Activity、服务Service、广播接收者BroadcastReveiver,并列称为Android的四大组件,均是需要自定义子类继承上述组件类,并在清单文件中静态注册或逻辑代码中动态注册才能正常使用。 android.content.ContentProvider内容提供者类,是用来对其他应用程序提供分享数据内容的组件类,在应用程序间的文件共享一文中,针对Android7.0以上版本所注册的FileProvider文件提供者,便是已经定

2021 10-15

【NOIP1998】 三连击 题解

文章转载前需和原作者联系,否则追究法律责任 题目链接:https://www.luogu.com.cn/problem/P1008 首先我们来分析一下题目。要求是枚举三个数,比例为1:2:3,且各个数字由1-9组成。我们采用枚举的方式来进行这道题目。首先,数字满足两个条件(比例为1:2:3,且各个数字由1-9组成),我们只需要枚举其中的一种条件,然后判断第二种条件是否满足即可。举例:枚举数字比例1:2:3,然后进行判断数位是否由1-9组成。代码框架: #include<bits/stdc+

2021 10-15

单体应用 适合采用 dapr 构建吗?

缘起今天在微信群里有同学问”纯.net项目,有必要上dapr吗?”  当时不假思索的说不是微服务没必要,其他群友也说没必要。下午细想了一下,觉得这个和微服务没有关系,如果我的应用是个单体架构(将所有功能都部署在一个web容器中运行的系统就叫做巨石型应用),但是它却用到了分布式中间件,比如缓存、消息队列,Actor模型呢,这些分布式中间件的标准化API正是Dapr的价值所在。 从前两天写的文章为什么Dapr如此令人兴奋第二点,Dapr利用Sidecar的模式,把代码中的一些横切关注点需

2021 10-15

写操作系统之开发引导扇区

本篇目标 介绍引导扇区。 介绍软盘结构(FAT12)。 用汇编代码把加载器读取到内存中。 用汇编代码把内核加载器读取到内存中。 简略流程 计算机启动的简略流程如下: BIOS对应的中文术语是“基本输入输出系统”。计算机启动时,首先运行的便是BIOS。 BIOS是计算机厂商预置在计算机硬件中的一种软件,它会完成一些操作。我们只需知道,它会从内存地址0x7c00处读取引导扇区,就足够了。引导扇区的作用是从软盘中读取加载器。 我们把”引导扇区“叫做boot,把引导扇区的源码文件命名为boot.a

2021 10-15

2021MySQL 8.0.26安装教程,目前最新版(详细全面)

MySQL8要比MySQL5.7快2倍,还带来了大量的改进和更快的性能!所以为什么不用MySQL8呢!下面是MySQL8.0.26的安装教程。 安装网址: https://dev.mysql.com/downloads/windows/installer/8.0.html 点击后进入如图网页:    那么mysql-installer-web-community与mysql-installer-community有什么区别呢?mysql-installer-web-comm

2021 10-15

java课堂测试3第一部分(未完善)

packagetest3;importjava.util.*; publicclassGrade2{staticString[][]mis=newString[500][4];//将错误的题放入其中publicstaticintgenerateRandom(intrange)//生成随机数{Randomrandom=newRandom();intR=random.nextInt(range);returnR;}publicstaticchargenerateOperator()//生成运算符{i