自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Redis数据持久化方式RDB和AOF的区别

在子进程进行AOF重写期间,服务器还会处理写请求的命令,这会导致服务器当前的数据库状态和重写后的AOF文件所保存的数据不一致。其中SAVE是阻塞的,BGSAVE是非阻塞的,通过fork了一个子进程来完成的。:AOF(Append Only File)持久化是通过将存储每次执行的客户端命令,然后由一个伪客户端来执行这些命令将数据写入到服务器中的方式实现的。AOF方式持久化时记录的时一条一条的写命令,随着服务器运行的时间越来越长,AOF文件会越来越大,AOF重写就是为了解决这个问题。命令追加(append)..

2022-08-10 21:14:06 326 1

原创 redis的初识与基本操作

REmote DIctionary Server(Redis) 是一个由Salvatore Sanfilippo写的key-value存储系统。Redis是一个开源的使用ANSI C语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。它通常被称为数据结构服务器,因为值(value)可以是 字符串(String), 哈希(Hash), 列表(list), 集合(sets) 和 有序集合(sorted sets)等类型。...

2022-08-10 21:13:32 93

原创 初始分布式

因为在mysql做成集群之后,主要的写压力还是在master的机器上,其他slave机器无法分担写压力,这时,就引出了“分布式”。分布式的主要应用场景是单台机器已经无法满足这种性能的要求,必须要融合多个节点,并且节点之间的相关部分是有交互的。为了让厨师专心炒菜,把菜做到极致,又请了个配菜师负责切菜,备菜,备料,厨师和配菜师的关系是分布式,后来客人多了,厨房一个厨师忙不过来,又请了个厨师,两个厨师炒一样的菜,这两个厨师的关系是集群。其中,节点指的是计算机服务器,而且这些节点一般不是孤立的,而是互通的。...

2022-08-08 21:18:06 123

原创 事务的基本知识

让我们总结一下, 3PC 相对于 2PC 做了一定的改进:引入了参与者超时机制,并且增加了预提交阶段使得故障恢复之后协调者的决策复杂度降低,但整体的交互过程更长了,性能有所下降,并且还是会存在数据不一致问题。,那么答案也是不断重试,因为有可能一些参与者的事务已经提交成功了,这个时候只有一条路,就是头铁往前冲,不断的重试,直到提交成功,到最后真的不行只能人工介入处理。挂了,这个还行,也是至少命令发出去了,很大概率都会提交成功,然后释放资源,但是如果出现网络分区问题某些参与者将因为收不到命令而阻塞着。...

2022-08-08 16:28:40 100

原创 初识微服务

1)微服务就是一种架构风格(2)微服务就是把一个项目拆分成独立的多个服务,并且多个服务是可以独立运行的,而每个服务都会占用线程。

2022-08-05 21:06:51 69

原创 SpringMVC【入门篇】

本文旨在读者能通过本文知道SpringMVC是什么、干什么用的,在此基础上为了让读者能”知其然知其所以然”,还会介绍SpringMVC执行原理流程是怎么的,为的是让读者能对SpringMVC有更加深刻的认识和理解,在开发中能顺心应手,最后再通过一个简单的入门案例实现SpringMVC的功能,让读者切身感受下SpringMVC在项目中的作用。...

2022-08-05 21:05:42 696 1

原创 MyBaits基础

MyBatis是一款优秀的持久层框架,它支持自定义SQL、存储过程以及高级映射。MyBatis免除了几乎所有的JDBC代码以及设置参数和获取结果集的工作。MyBatis可以通过简单的XML或注解来配置和映射原始类型、接口和JavaPOJO(PlainOldJavaObjects,普通老式Java对象)为数据库中的记录。...

2022-07-21 09:18:33 89

原创 前端基础03

计算属性主要是用于对各个状态之间进行运算,数据过滤的一种处理。

2022-07-21 09:17:03 64

原创 前端基础02

手动安装vue-router默认安装出来的版本是4.x版本,4.x版本是为vue3.x匹配制作的,导致我们vue2.x核心的项目无法使用采用构建编译的方式开发项目,经常会遇到依赖与依赖之间版本匹配的问题,特征是代码不报错,项目报错出在依赖中。解决方案是尝试更换不同的依赖版本,一般是降版本。...

2022-07-19 20:09:20 58

原创 前端框架基础

1、htmljscss导入。

2022-07-19 20:08:52 224

原创 JAVA网络编程

Java网络编程计算机网络就是通过传输介质、通信设施和网络协议,把分散在不同地点的计算设备互连起来,实现资 源共享和数据传输的系统。TCP/IP协议簇TCP/IP协议栈是一系列网络协议的总和,是构成网络通信的核心骨架。分层模型TCP/IP协议栈的分层模型常见的有2个,分别是TCP/IP参考模型和ISO组织提出的OSI参考模型。在 TCP/IP参考模型中将网络分为网络访问层【数据链路层】、互联网层【网络层】、传输层、应用层共4 层,OSI参考模型分为物理层、数据链路层、网络层、传输层、会话层、表示层、应

2022-06-06 13:40:38 157

原创 mysql中的DDL和DML/DQL

DDL表操作创建操作create table tb_student(id bigint primary key auto_increment,name varchar(10) not null comment ‘说明信息’,birth date,sex boolean default 1,salary numeric(8,2))engine=innodb default charset utf8;快速创建一个表和另外一个表的结构相同,只是克隆表结构,不会克隆数据create table 新表

2022-06-06 13:37:13 159

原创 mysqls数据库的数据类型

mysqls数据库的数据类型

2022-06-06 13:35:12 346

原创 数据库常用操作

在MySQL中可以将SQL分为4大类:DDL数据定义语言: create 创建、 alter 修改、 drop 删除、 truncate 截断DML数据操纵语言: insert 插入、 update 修改、 delete 删除DQL数据查询语言: select 查询DCL数据控制语言: grant 授权、 revoke 回收权限DDL 数据定义语言用于定义数据库对象的操作语句数据库操作创建操作语法规则 create database 数据库名称 default character set u

2022-05-10 16:52:03 960

原创 mysql的下载安装以及配置

1 、下载 https://dev.mysql.com/downloads/mysqlMySQL 本来是完全免费的产品,被 Oracle 收购后,现在分为 3 个不同的版本:MySQL企业版,收费或者试用MySQL社区版,免费的MySQL高级集群版,收费MySQL的经典老版本也是免费的在线安装需要网络支持选择安装类型,这里选择使用选择需要安装的产品和特征开始执行环境配置步骤 1):在桌面上右击“此电脑”→“属性”命令,如图所示。步骤 2):打开“控制面板”窗口,选择“高级系统设置”,

2022-05-09 19:08:49 116

原创 数据库的基本概念及常见数据库的对比

数据库概论数据库是指长期存储在计算机内有组织可共享的数据集合。数据库中的数据以及数据之间的关系按照一 定的数据模型 组织、描述和存储,具有较小的冗余度、较高的数据独立性和易扩展性,并在一定的范围 内可以被多个用户共享。数据模型:层次模型、网状模型、关系模型,据说下一代是对象模型关系型数据库是建立在关系数据模型基础上的数据库,借助集合代数的概念和方法处理数据库中的数据,同时也是一个被组织成具有描述的二维表格,表格的实质就是装载数据项的收集器,这些表格中的数据能以不同的方式被存取或者重新召集,而不需要更新

2022-05-09 19:07:29 476

原创 -集合框架-

集合框架数据结构是了解数据存储在内存中的顺序和位置关系;算法是为求解一个问题所需要遵循的、被清楚指定的简单指令的集合。数据结构是为算法服务的,算法是要作用在特定的数据结构上的。常见的数据结构与算法:数据结构:数组、链表、栈和队列、散列表hash、二叉树、堆、跳表、图算法:递归、排序(学习七种和三种扩展,冒泡和快排必须掌握)、搜索、哈希、贪心、分治、回溯、动态规划、字符串匹配学习方法记忆接口中的方法,记忆对应接口的实现类(区别和如何选择,选择的原因是学习的重点)集合框架如何持有一组数据最合理

2022-05-02 15:09:40 70

原创 -HashMap-

hashmapJDK1.7采用的是头插法,容易产生环形链和数据丢失问题JDK1.8采用的是尾插法,容易产生数据丢失问题HashMap的实现原理散列或者哈希:以节点的key值为自变量,通过一定的函数关系(散列函数)计算出对应的函数值,以这个值为该节点存储在散列表中的地址JDK1.7采用的是数组+链表,而JDK1.8采用的是数组+链表+红黑树HashMap在JDK1.7和JDK1.8的区别JDK1.7 JDK1.8存储结构 数组+链表 数组+链表+红黑树初始化方式 单独函数inflateTab

2022-05-02 15:06:03 81

原创 --泛型--

将一个对象放入集合中,集合不会记住这个对象的具体类型(向上转型Object tmp = new Date();)当再次从集合中取出对象时,该对象的编译期类型变成了Object类型,但是其运行时类型仍然为原始的类型public static void main(String[] args) {List list = new ArrayList();list.add(“123”);list.add(123);// 集合中不能存放原生类型,这里会涉及自动装箱操作list.add(new Date());

2022-04-27 15:18:51 604

原创 - 泛型 -

泛型本质上是指类型参数化泛型的继承泛型类是可以继承的,任何一个泛型类可以作为父类或者子类,不过和普通的继承略有不同父类 public class A{}泛型的子类必须将将泛型父类所需要的类型参数沿着继承链向上传递子类不是泛型类则需要给泛型父类传递类型常量public class B extends A{}子类时泛型类可以给父类传递类型常量,也可以传递类型变量public class B extends A{}如果父类的泛型中有约束public class A{}public clas

2022-04-27 15:16:30 79

原创 基本排序算法、查找算法、链表的实现、集合框架回顾

基本排序算法Java中常见的排序算法有7种:冒泡、插入、选择、快速、希尔、归并和堆冒泡排序核心思想是:相邻比较,交换位置时间复杂度O(n**2),空间复杂度O(1),稳定的public class Test1 {public static void main(String[] args) {int[] arr = new int[10];Random r=new Random();for(int i=0;i<arr.length;i++)arr[i]=r.nextInt(100);

2022-04-25 16:47:50 83

原创 -锁机制-

对象锁:同步方法,锁住的对象全局锁:类锁,静态方法,锁住的是class类synchronized使用场景用于实现代码的同步处理,保持可见性、有序性和原子性数据不安全的2个条件:共享的临界资源、多线程同时访问并改变数据synchronized三种形式synchronized修饰普通方法,锁对象是当前对象synchronized修饰静态方法,锁对象是当前类synchronized修饰同步代码块,锁对象是synchronized后面括号中的配置对象当时有synchronized修饰同步代码块是,

2022-04-25 16:45:31 50

原创 Java进程与线程相关知识

基础概念程序是为了完成某个特定任务,使用某种计算机语言编写的一组指令的有序集合进程是具有一定独立功能的程序的运行过程,是系统进行资源分配和任务调度的一个独立单位线程是进程中的一个独立执行线索,是CPU调度和分配的基本单位,自己基本上不拥有系统资源进程每个进程都有独立的代码和数据空间,进程切换成本较高,一个进程中可以包含1-n个线程,进程是资源分配的最小单位同一个进程中的线程可能会有共享代码,可以共享进程的数据空间,每个线程由独立的运行栈和程序计数器,线程切换的开销很小,线程是CPU调用的最小单位

2022-03-13 09:16:52 124

原创 Java流相关知识

流的概念在Java程序中,对于数据的输入输出操作以流Stream方式进行,JavaSE提供各种各样的类用于使用相同的方法获取不同类型的数据,程序中通过标准的方法输入或者输出数据流是处理输入/输出的一个洁净的方法,它不需要代码理解键盘和网络的不同。Java中流的实现是基于java.io包定义的类层次结构的流的分类从Java不同版本上来说,流可以分为BIO、NIO和AIO三大类。Java中的BIO、NIO和AIO理解为是Java语言对操作系统的各种Il0模型的封装。程序员在使用这些API的时候,不需要关

2022-03-12 10:39:29 147

原创 Java中的克隆

对象克隆Object类中定义一个clone方法protected native Object clone() throws CloneNotSupportedException;native方法用于声明一个非java语言实现的代码,供java程序调用。因为java语言程序是运行在JVM上, 如果要访问比较底层的与操作系统相关的方法就没有办法了,只能通过比较靠近系统的语言来实现,比 如C/C++。Object a=new Object();Object b=a; //变量b中存储的是变量a的引用值,

2022-03-10 16:43:17 781

原创 Java学习(BIO编程、NIO、AIO及其区别)

BIO编程使用统一接口进行操作,具体实现细节无关字节流InputStream和OutputStream,都实现了Closeable接口,所以支持try-resourcesInputStream操作用于实现数据的读取操作read():int 注意这里只是读取一个字节,0-255之间,-1表示流结束read(byte[]):int 返回值表示读取的具体字节个数,-1流结束close():void 关闭流另外不重要的方法 read(byte[],int,int) available() skip(

2022-02-18 10:25:48 86

原创 Java多线程应用编程

多线程应用编程非常重要的章节【理论】,计划分为2个部分:线程基础入门、与集合框架混用基础概念程序是为了完成某个特定任务,使用某种计算机语言编写的一组指令的有序集合进程是具有一定独立功能的程序的运行过程,是系统进行资源分配和任务调度的一个独立单位线程是进程中的一个独立执行线索,是CPU调度和分配的基本单位,自己基本上不拥有系统资源进程每个进程都有独立的代码和数据空间,进程切换成本较高,一个进程中可以包含1-n个线程,进程是资源分配的最小单位同一个进程中的线程可能会有共享代码,可以共享进程的数

2022-02-15 10:19:01 153

原创 Java进程与线程的基本概念

基础概念程序是为了完成某个特定任务,使用某种计算机语言编写的一组指令的有序集合进程是具有一定独立功能的程序的运行过程,是系统进行资源分配和任务调度的一个独立单位线程是进程中的一个独立执行线索,是CPU调度和分配的基本单位,自己基本上不拥有系统资源进程每个进程都有独立的代码和数据空间,进程切换成本较高,一个进程中可以包含1-n个线程,进程是资源分配的最小单位同一个进程中的线程可能会有共享代码,可以共享进程的数据空间,每个线程由独立的运行栈和程序计数器,线程切换的开销很小,线程是CPU调用的最小

2022-02-08 10:15:26 132

原创 成员应用细节

成员应用细节JVM主要包括三块内存空间,分别是栈内存、堆内存和方法区Java虚拟机包含类装载器子系统、执行引擎、运行时数据区、本地方法接口和垃圾收集模块。类装载器子系统:根据给定的全限定类名(如: java.lang.Object)来装载class文件到运行时数据区域的方法区中。执行引擎:执行字节码或执行本地方法。运行时数据区∶就是常说的JVM的内存,堆,方法区,虚拟机栈,本地方法栈,程序计数器。本地方法接口:与本地方法库交互,作用就是为了融合不同编程语言为Java所用,它的初衷是融合C/C++

2022-01-25 16:38:14 56

原创 Java抽象类

抽象类面向对象编程的核心就是面向抽象编程,一般在开发过程中依赖抽象,不依赖具体public class A{public void pp(Pig pig)}//如果使用具体类,则不具备灵活性。如果需要使用Cat,则只能修改源代码public class A{public void pp(Animal obj){}//调用方法时实际上可以传入任何Animal的子类,例如Pig或者catclass Animal{}class Pig extends Anima1{}1l class cat ext

2022-01-18 16:16:28 641

原创 Java异常处理

异常·程序运行时发生的不被期望的事件,它阻止了程序按照程序员的预期正常执行,这就是异常。异常发生时,是任程序自生自灭、立刻退出终止?程序员真理凡是程序一定会出错出错不是问题,关键是出错之后,错误如何处理?谁处理?​ 程序可以从错误中恢复吗?恢复不了就崩溃么?意外产生和处理过程概述运行时有许多因素引起出错,硬件失败,除法溢出,数组下标越界。出错的位置都在方法Method里出错后方法生成一个Exception对象,并把它交给JVM。这个对象里包括许多信息:错误类型,错误位置。JVM负责处理Exc

2022-01-04 19:36:26 434

原创 java的一些基本语法

关键字final含义是最终的、不变的final属性和临时变量,一旦赋值则不能修改属性赋值可以声明的同时直接赋值private final string name=“zhangsan”;,还可以在构造器或者非静态代码块中进行赋值class Al {private final String name = "zhangsan" ;\}class B1 {private final String name;public B1(){name ="无参数"; }public B1(int kk)

2021-12-08 15:13:23 72

原创 抽象类的基本知识

抽象类面向对象编程的核心就是面向抽象编程,一般在开发过程中依赖抽象,不依赖具体public class A{public void pp(Pig pig)}//如果使用具体类,则不具备灵活性。如果需要使用Cat,则只能修改源代码public class A{public void pp(Animal obj){}//调用方法时实际上可以传入任何Animal的子类,例如Pig或者catclass Animal{}class Pig extends Anima1{}1l class cat ext

2021-12-08 15:12:51 387

原创 成员应用细节

成员应用细节JVM主要包括三块内存空间,分别是栈内存、堆内存和方法区Java虚拟机包含类装载器子系统、执行引擎、运行时数据区、本地方法接口和垃圾收集模块。类装载器子系统:根据给定的全限定类名(如: java.lang.Object)来装载class文件到运行时数据区域的方法区中。​ 执行引擎:执行字节码或执行本地方法。​ 运行时数据区∶就是常说的JVM的内存,堆,方法区,虚拟机栈,本地方法栈,程序计数器。​ 本地方法接口:与本地方法库交互,作用就是为了融合不同编程语言为Java所用,它的初衷是

2021-12-08 15:11:53 62

原创 Java面向对象

概述面向过程是一种自上而下的程序设计方法,主要思路专注于算法的实现自上而下的设计方法,设计者用一个main函数概括出整个应用需要做的事情,然后把main方法拆解成不同的步骤,对应不同的函数过程式的特征是以函数为中心,用函数作为划分程序的基本单位;数据在过程式设计中处于从属的位置过程式设计的优点是易于理解和掌握,这种逐步细化问题的设计方法与大多数人的思维方式比较接近过程式设计是自上而下,这就要求设计者在开始时要对需要解决的问题有一定的理解,然而在问题比较复杂时,要做到这一点比较困难;当开发需求变化时,以

2021-11-20 00:11:28 198

原创 Java字符串

字符串类型字符:简单类型String,标准格式为单引号字符串:复合类型String,标准格式为双引号在Java中字符串属于对象,Java提供了String类来创建和操作字符串。当对字符串进行频繁修改的时候,需要使用StringBuffer和StringBuilder类。和String类不同的是,StringBuffer和StringBuilder类的对象能够被多次的修改,并且不产生新的未使用对象。String、StringBuffer、StringBuilderstring s1="ab"+"c"

2021-11-12 21:56:19 112

原创 Java冒泡排序

冒泡排序Java提供了7种常见的排序方法:冒泡、插入、选择、快速、希尔、归并和堆衡量一固排序算法的相開圈性:时间复杂度、空间复杂度、稳定性public class Test6 { public static void main(string[] args) { int[] arr1 = generateArray(10); showArray(arr1); bubblesort(arr1); showArray(arr1);}//使用冒泡排序封数撼魋行原地排序

2021-11-12 21:55:30 448

原创 基本的数组知识

数组Array是一个容器,主要用于存储一组类型相同且连续的数据。(即下标是连续的)数组中存储的每一个数据都叫做数组的元素特点1.数组内容可变2.数组长度是不可变的3.数组有下标,下标从左往右从0开始数组的定义(声明)和赋值1、静态初始化int[] a= {10,20,30,40,50};2、动态初始化int[] b=new int[] {1,2,3,4,5};int[] c;c=new int[] {100,200,300};3、只给定长度,不指定具体元素内容(注意:(1)允

2021-11-05 21:41:44 192

原创 基本数据类型与体系结构

变量数据类型:Java是一种强类型编程语言生命周期:有效范围,Java提供了垃圾回收机制int kk = 100;Java中的数据类型可以分为两大类基本类型【原生】和引用类型【复杂】基本类型4型8种:整型:byte、short、int、long①Java采用补码的方式存储数据②四种不同的表示方式:十进制、0 八进制、0x十六进制、0b 二进制③在使用字面量,Java中的整数默认类型是int,如果想表示long则在数值末尾加l/L,一般建议使用L浮点数字符类型 charchar

2021-11-05 21:40:57 165

原创 JAVA基础知识

Java语言·​ 一种面向对象的语言​ 一种平台无关的语言,必须程序运行的解释环境​ 一种健壮的语言,吸收了C/C++语言的优点,但是去掉了影响程序健壮性的部分,例如指针、内存的申请与释放等。典型的应用场景:互联网环境常见错误1、使用临时变量,Java要求必须是先定义后使用,必须是先赋初值后使用 int k;//Java是一种强类型编程语言,临时变量要求先定义后使用,必须先赋初值后使用systm.out.print7n(k);2、目前的要求:将所有的程序都必须写在方法内部,不能写在方法外

2021-10-29 21:58:51 145

空空如也

空空如也

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

TA关注的人

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