自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(29)
  • 收藏
  • 关注

转载 Vagrant 新手指南,搭建Linux虚拟机

入门教程,使用vagrant搭建Linux虚拟机环境

2023-07-03 06:43:28 628

原创 0-zookeeper之Linux系统安装zookeeper

0. Linux系统安装zookeeper安装zookeeper之前,先把jdk安装好安装指导https://www.cnblogs.com/sea520/p/13500978.htmlhttps://www.cnblogs.com/lsdb/p/7297731.html下载地址https://zookeeper.apache.org/ ,记住下载bin包,否则会启动不了程序,相关错误可见章节4、安装常见问题 1下载后,上传到服务器指定目录 /root/soft/zook

2021-12-17 23:46:05 1693

原创 07-Redis的Sorted Set类型

常见命令Sorted Set和List、Set的区别List可以重复:list元素是可以重复的无序:集合里面的元素是无序的有序:是元素的插入和弹出有序Set去重:set集合去重了的,元素不会有重复的无序:集合里面的元素是无序的无序:元素插入和弹出是无序的Sorted Set:在Set的基础上,多了对成员排序的功能去重:Sorted Set集合去重了的,元素不会有重复的有序:集合里面的元素是有序的无序:元素插入和弹出是无序的命令演示127.0.0.1:70

2021-11-29 12:16:28 1167

原创 06-Redis的Set类型

List和Set的异同List可以重复:list元素是可以重复的无序:集合里面的元素是无序的有序:是元素的插入和弹出有序Set去重:set集合去重了的,元素不会有重复的无序:集合里面的元素是无序的无序:元素插入和弹出是无序的常用的命令命令演示127.0.0.1:7000> sadd k1 hello #添加 1个元素到集合(integer) 1127.0.0.1:7000> sadd k1 world #再次添加 1个元素到集合(integer) 1

2021-11-28 17:24:41 159

原创 05-Redis的hash类型

常用的hash命令命令演示127.0.0.1:7000> hset k1 name zhangsan #k1有一组hash,filed为name----value为zhangsan(integer) 1127.0.0.1:7000> hget k1 name"zhangsan"127.0.0.1:7000> hset k1 name zhangsan age 20 #hset命令就可以设置多组hash值了,当然hmset命令也可以(integer) 1127.0.0.1:

2021-11-28 11:29:38 415

原创 04-Redis的List类型

list常用的命令如下:[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-bn46a77g-1638022235940)(./list命令.png)]栈:同向命令,先进后出lpush lpoprpush rpop队列:反向命令,先进先出lpush rpoprpush rpop数组lindex lset阻塞:单播队列,先进先出blpop brpoplpush的命令演示127.0.0.1

2021-11-27 22:11:33 302

原创 3-位图的使用场景

1、二进制安全redis只存储字节流,与外界交互,存取都是字节流,只要双方客户端有统一的编解码,数据就不会被破坏。redis拿的是字节流,编码是一个字符一个字节redis-cli --raw 连接redis服务,并触发编码器的格式化。如果不格式化,redis只会识别ASCII码的,超出ASCII码,则显示为16进制2、位图的使用场景2.1、场景一:统计一段时间内用户的登录天数如果用数据库实现创建表,用户每笔登录都产生一行记录,然后登录登录时间,还有其他数据也需要记录。MySQL数据

2021-11-26 22:29:12 616

原创 0、数据存储常识

常识1、磁盘 2个指标寻址 磁盘寻址速度单位是毫秒级带宽 单位时间内有多少个字节流过去,多大的数据量过去。单位基本是G或M级别2、内存寻址 内存寻址速度单位是纳秒级3、I/O buffer 成本问题磁盘有磁盘与扇区。一个扇区有512个字节Byte成本变大、索引变大,所以为了避免这样,无论读多少,都是最少4k从磁盘拿4、数据存储发展进程1、操作系统底层读写4k ---- >大文件的读写,I/O成为瓶颈,诞生了数据库2、数据库2.1、data

2021-11-26 22:16:27 287

转载 14、Java枚举类基础

1. 背景  在java语言中还没有引入枚举类之前,表示枚举类型的常用模式是申明类具有int常量,比如分别用1表示春天,2表示夏天,3表示秋天,4表示冬天。public class Season { public static final int SPRING = 1; public static final int SUMMER = 2; public static final int AUTUMN = 3; public static final int WINTER = 4;}

2021-07-03 12:05:04 48

原创 13、时间类的使用

1.时间类的介绍时间类如上,我们常用的是日历类Calendar,java.util.Date类,日期格式化SimpleDateFormat类。java.util.Date类,用于获取系统当前时间,返回的是一个距离1970年1月1日 00:00:00的毫秒数DateFormat类继承自Format类,他们都是抽象类,是一个日期的格式化类,用来格式化日期,不过通常使用SimpleDateFormat类来格式化日期2. Date类----获取系统当前时间  在开发过程中,通常很多人都习惯使用new

2021-07-03 10:35:20 117

原创 12、Math类

1、Math类介绍emsp;emsp; java.lang.Math类提供一个写基本数字运算和几何运算的方法,这个类是final类,因此没有子类,此类中的所有方法都是静态的。1.1 Math类的常用方法static double abs(double a) 返回值为 double绝对值。 这里的形参可以是int、long、float类型,返回值类型与之对应static double ceil(double a) 返回大于或等于参数的最小(最接近负无穷大) double值,等于一个数学整数。

2021-07-01 23:27:58 82

原创 11、StringBuild常用方法

StringBuilder概述StringBuilder是一个可变的字符串类,我们可以把他看成一个容器,这里的可变是指的是StringBuilder对象中的内容是可变的区别:String 和 StringBuilder的区别String:内容是不可变的 被final修饰了StringBuilder:内容是可变的StringBuilder的构造方法public StringBuilder() 创建一个空白可变字符串对象,不含有任何内容public StringBuilder(String

2021-06-30 23:20:25 1967

转载 10、StringBuffer的常用方法与操作

StringBuffer是字符串缓冲区,是一个容器。特点:1,长度是可变化的。2,可以直接操作多个数据类型。3,最终会通过toString方法变成字符串。**C create U update R read D delete **1、存储StringBuffer append():将指定数据作为参数添加到已有数据结尾处。StringBuffer insert(index,数据):可以将数据插入到指定index位置。2、删除StringBuffer delete(start,end):删除

2021-06-30 22:13:54 399

原创 9、String 常用的几种方法

public int length():求字符串的长度public int indexOf(String str):求某个字符在字符串中的位置public char charAt(int index):求一个字符串中某个位置的值equals():比较两个字符串是否相同replace():将字符串中的某些字符用别的字符替换掉。形如replace(“abc”,”ddd”);字符串中的abc将会被ddd替换掉。split():根据给定正则表达式的匹配拆分此字符串。源码:public String[]

2021-06-30 21:01:07 58

原创 8、Java变量

  Java变量分为成员变量、局部变量,那么各自的含义和区别是什么呢?如下说明:成员变量:是定义在类里面,方法之外(语句块之外)的变量;局部变量:定义在类里面,方法之内(语句块之内)的变量,变量的申明和初始化都是在方法中,方法结束后,就自动销毁 &emsp变量再细分,分类结构如下:说明:方法内部除了能访问方法局部变量,还可以访问类变量和实例变量,即成员变量都可以访问;代码块内部能够访问类变量和实例变量,另外如果块被包含在方法内部,它还可以访问方法局部变量;方法局部变量和代码块布局部

2021-06-28 23:30:18 40

转载 7、Java构造器、迭代器

1. Java构造器1.1 概念  构造器:又叫构造方法、构造函数。当new一个对象的时候,就会调用构造器。  默认构造器:如果没有定义构造器,那么会默认一个无参构造器,当然如果自定义了构造器,则会覆盖默认的无参构造器。注意,在实际中,我们定义类的时候,最好手动定义一个无参构造器。  构造器重载:跟普通方法一样,构造器也支持重载。就是说在定义一个类的时候,可以同时定义多个带参数的构造器,它是通过不同的参数列表来实现重载的。  构造器的继承:子类的构造器会默认调用父类的无参构造器,如果父类没有无参构

2021-06-28 23:00:47 124

转载 6、初识Java堆、栈、方法区、常量池、队列

目录1、引言----从一行代码开始2、堆、栈、方法区、常量池介绍3、谈谈操作系统的堆、栈和数据结构的堆、栈4、案例说明5、队列从这里开始,我们就取初步认识一下Java中的堆、栈等知识,打算用几个章节,把我所知道的,汇总他人的经验,在这里浅谈一下。当然了,我这里仅是一个初探,没有进行更深入的了解,如果大家想了解深入的东西,请移步大牛帖子。在此,作为一个小白,如有说错的地方,欢迎大家指正。1、引言----从一行代码开始 首先我们来看一种创建对象的...

2021-06-28 19:51:58 322

转载 5、Java中的值传递和引用传递

1、基本数据类型 Java中数据类型分为两大类,基本类型和引用类型。相应的,变量也有两种类型,基本类型和引用类型。基本类型的变量保存原始值,它代表的是数值本身。引用类型的变量保存引用值,而这个引用值是内存空间的地址,代表了某个对象的引用,相当于指针,而不是对象本身,对象本身存放在这个引用值所表示的地址的位置。2、变量的基本类型和引用类型基本数据类型在声明时,系统就给它分配了空间,如int a;a = 10; //正确,因为声明a时就分配了内存空间引用类型则不同,它声...

2021-06-26 22:13:34 77

转载 4、java中Scanner类的用法

在idea中编写程序时,如果我们的变量是需要手动输入的时候,我们就可以用到scanner类了。 Scanner类,这是一个用于扫描输入文本的新的实用程序。由于任何数据都必须通过同一模式的捕获组检索或通过使用一个索引来检索文本的各个部分。于是可以结合使用正则表达式和从输入流中检索特定类型数据项的方法。这样,除了能使用正则表达式之外,Scanner类还可以任意地对字符串和基本类型(如int和double)的数据进行分析。借助于Scanner,可以针对任何要处理的文本内容编写自...

2021-06-26 08:23:43 177

转载 3、java中System类详解

前面2节介绍了System.in和System.out,他们都属于System类,这一节我们继续看System类。System类代表系统,系统级的很多属性和控制方法都放置在该类的内部。该类位于java.lang包。由于该类的构造方法是private的,所以无法创建该类的对象,也就是无法实例化该类。其内部的成员方法和成员变量都是static(静态)的,所以也可以很方便的调用他。1、成员变量 system中包含了in、out和err三个成员变量,分别代表标准输入流(键盘输入)、标准输出流(...

2021-06-26 08:06:16 408

转载 3、System.out标准输出

1、概念System.out作为PringStream打印流类的对象实现标准输出,可以调用它的print、println、write方法来输出各种类型的数据。 print和println的参数完全一样,不同之处在于println输出后换行,而print不换行。 write方法用来输出字节数组,在输出时不换行。它的结构关系如下:其祖先OutputStream类有如下方法: Modifier and Type Method and Descr...

2021-06-26 07:51:06 1238

转载 2、JAVA中的System.in

一、介绍 创建文件扫描器对象,System.in表示的是标准输入,可以从控制台读取数据(装饰者模式),System.out表示标准输出。System.in读取标准输入设备数据(从标准输入获取数据,一般是键盘),其数据类型为InputStream,方法为: int read() -----返回输入数值的ASCII码,该值为0到255范围内的int字节值,若返回值为-1,则表示没有读取到任何字节,读取结束。 int read(byte[] b) -----读入多个字节到缓冲区...

2021-06-25 23:43:12 7043

原创 1、基本数据类型的转换

一、基本数据类型 基本数据类型,我们都知道有4类8种,数值型有byte、short、int、long,字符型char,布尔型true、false,浮点数有float、double。在存储空间中,1一个字节8位,然后数值型的4种数据类型分别占用存储空间1、2、4、8个字节;字符型char占用1个字节,布尔型true、false均占用2个字节,浮点数float、double分别占用4、8个字节。口诀简记为 “1 2 4 8 ”。相比大家都知道进制的换算,也有一个口诀方法即8421法,这个在这里不赘...

2021-06-25 21:35:28 718

原创 2、Redis的数据类型-string

Redis并不是简单的key-value存储,实际上他是一个数据结构服务器,支持不同类型的值。也就是说,你不必仅仅把字符串当作键所指向的值。下列这些数据类型都可作为值类型:二进制安全的字符串 Lists: 按插入顺序排序的字符串元素的集合。他们基本上就是链表(linked lists)。 Sets: 不重复且无序的字符串元素的集合。 Sorted sets,类似Sets,但是每个字符串元素都关联到一个叫score浮动数值(floating number value)。里面的元素总是通过score进

2021-06-14 14:44:18 176 6

原创 1、Linux下Redis的安装

首先来看一段官方介绍,Redis是一个开源的内存中的数据结构存储系统,可用作数据库、缓存、消息中间件。它支持多种类型的数据结构,如 字符串(strings)、列表(lists)、集合(sets)、有序集合(sortt)...

2021-06-12 23:44:51 51

原创 2、线程池

1、为什么需要线程池 在实际使用中,线程是很占用系统资源的,如果对线程管理不善,很容易导致系统问题。因此,在大多数bignfa

2021-06-09 08:08:53 93

原创 1、多线程

要说明多线程,我们先来了解一下程序、进程、线程,如图所示——计算机的组成

2021-06-08 18:00:50 111

原创 git提交文件或文件夹的注意事项

1、git push时,新建文件或文件夹的当前路径要和远程服务仓的路径一致,否则提交不了。如:本地仓为d:/01/02/03.txt远程仓为https://github.com/用户名/仓库名1/test如在E盘/01/克隆远程仓(仓库名1/test)后,本地仓的地址为:E:/01/仓库名1/test;在本地test新建一个文件01.txt后,必须要在test目录下打开git shell命令行工具(这样才是和服务仓的路径保持的一致),而不能在仓库名那一层级的目录打开git shell,否则不能直

2020-07-01 02:41:42 219

原创 python中字典和json的区别

1、定义python中,json和dict非常类似,都是key-value的形式,而且json、dict也可以非常方便的通过dumps、loads互转。既然都是key-value格式,为啥还需要进行格式转换?json(JavaScript Object Notation)json:是一种数据格式,是纯字符串。可以被解析成Python的dict或者其他形式。并不像字典具备操作性,并且是格式就会...

2020-04-25 18:54:03 187

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除