自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 如何安装React的第一个脚手架

学习React和Vue其实很多都是想通的,Vue中学到过一般我们都是通过脚手架来完成项目的开发,那么React也同样是有脚手架进行开发的,这样可以为我们省去很多的时间提高的我们的开发效率。那么接下来就是如何完成第一个脚手架的开发。好了,到这里安装第一个脚手架就算完成了。说在最后:接下来的一段时间就是主要学习react博客更新也会更多的是react开发中碰到的一些问题的整理,毕竟公司项目用的是react。加油我们一起冲~~

2022-11-07 21:57:16 277

原创 react.development.js、React-dom.development.js、babel.min.js 下载

在写这个博客之前好像也停更了半年之久,去实习鞭打了一波。现在回来继续开始学习新的知识。废话不多说,刚学react之前还是一样准备一个js配件很麻烦下这三个js包就给我碰壁了,全是要钱。所以没办法只能另辟蹊径了。

2022-11-01 16:19:46 826

原创 Git 创建分支、合并分支

git拉取分支、合并分支操作

2022-07-02 11:33:37 439

原创 关于电商项目的总结

首先近段时间自己做了一个电商的项目练练手,现在得闲把他的项目架构和一些知识点总结一下。项目的Gitee地址我先放在这,有需要可以自取:电商系统:https://gitee.com/phil0326/mall支付系统:https://gitee.com/phil0326/pay架构总结包的存放格式及命名一般以 com.cjhstdy.mall (com.公司名字.项目名称)其中:config: 配置文件的存放位置 XxxxConfig需要用 @Configuration 注明才能

2022-05-21 16:43:27 585 1

原创 【Vue】如何让表格单独行的某一列用其他颜色显示

如何让表格中的单独一行的某一列用其他的颜色标识出来

2022-04-26 16:05:36 1778 2

原创 【数据库】ACID底层实现原理

前言我们在学MySQL的时候事务是必须要知道的部分,也就是原子性(Atomic)、一致性(Consistency)、隔离性(isolation)和持久性(Persistence)。知道他的概念其实是远远不够的,现在越来越卷,那么就必须知道的他的原理什么?怎么是实现的。原理原子性:概念是指事物是一个不可分割的工作单位,事物中的操作要么都发生,要么都不发生。最经典的就是转账案例,我们把转入和转出当做一个事物的话,就需要在SQL中显式指定开启事务。实现原理:undo logundo log 是 回滚

2022-04-23 15:58:33 1315

原创 【LRU算法】最近最久未使用算法

前言LRU算法其实就是叫做最近最久未使用算法,经常出现在面试的笔试题目中,更有可能是在面试的过程中让你手撕一下LRU算法。没明白其中的道理的那真的是干熬啊,没办法。所以今天就来总结一下很久之前学的LRU算法。首先首先我们要知道我们写这个LRU算法的时候需要用到什么样的数据类型。这里我采用的是双向链表的形式来存储。但是呢,我们知道链表的查找时O(n)的时间复杂度,而删除和插入是O(1)的时间复杂度,这对于我们查找时很不友好的。所以我们得想想能不能将查找元素的时间复杂度降低一些把他也变成O(1)的形式。当

2022-04-20 16:43:22 2596

原创 【RabbitMQ】如何保证消息队列的可靠性传输

RabbitMQ如何保证消息的可靠性传输!主要在生产者、MQ、消费者这三者进行下功夫即可解决!如本文所示:

2022-04-12 21:19:49 1999

原创 B-树和B+树的区别

首先B+树的应用最多的就是在MySQL中的索引,是InnoDB存储引擎的默认索引。那么这个在面试中也是经常被问到的。那么就做一个总结吧。概念要了解B+树那么就不得不提一下的是B-树,因为B+树和B-树是由很大的联系。B树(B-tree) 是一种平衡的多路查找树,那么我们从图中也可以看到2-3树的影子,其实2-3树、2-3-4树是B树的一个特例。结点最大的孩子数目称为B树的阶,因此,2-3树是3阶的B树,而2-3-4是4阶的B树。再者B树的每个结点都会存储数据。我们在来看B+树:我们首先先比较

2022-04-03 21:18:40 2415

原创 MVCC底层实现原理

首先MVCC(Multi-Viewsion Concurrency Control) 又叫多版本协议控制,主要是提高数据库的并发性能。这里注意一下MVCC的落地实现是快照读。MVCC是用来解决读-写冲突的无锁并发控制,就是为事务分配单向增长的时间戳。实现原理判断规则当执行查询sql时会生成一致性视图read-view,它由执行查询时所有未提交事务id数组(数组里面最小的id为min_id)和已创建的最大事务id(max_id)组成,查询的数据结果需要read-view做对比从而获得快照结果。版本链

2022-03-29 22:04:32 794

原创 AQS(AbstractQueuedSynchronizer)抽象队列同步器

前言AQS 绝对是JUC的重要基石,也是面试中经常被问到的,所以我们要搞清楚这个AQS到底是什么?骑工作原理是什么?AQS是什么?是用来构建锁或者其他同步器组件的重量级基础框架及整个JUC体系的基石,通过内置的FIFO对列来完成资源获取线程的排队工作,并通过一个int类型变量表示持有锁的状态。CLH队列:CLH(Craig, Landin, and Hagersten)队列是一个虚拟的双向队列(虚拟的双向队列即不存在队列实例,仅存在结点之间的关联关系)。AQS 是将每条请求共享资源的线程封装成一个

2022-03-24 19:51:11 215

原创 【计算机网络】TCP的三次握手和四次挥手

首先tcp的三次握手和四次挥手绝对是高频的面试题,因为他是网络建立可靠稳定连接的基础,那么我们可以知道的时候三次握手是建立连接,四次挥手是断开连接。那其中衍生出来的一些问题如为什么要建立三次连接?两次为什么不行?为什么要四次挥手?三次为什么不行?等等,所以就此问题我做了一个简单的可以应付面试的总结,当然你要是想深入了解那必须看书!!!TCP 三次握手tcp的三次握手是为了建立两个端点之间的通信的,所以说tcp是点与点之间的通信。先上图,根据上图我来讲一下大致的握手过程:第一次握手:客户端处于S

2022-03-18 10:46:31 2830

原创 红黑树【自平衡的二叉搜索树】

首先红黑树虽然本质上是一棵二叉查找树,但它在二叉查找树的基础上增加了着色和相关的性质使得红黑树相对平衡,从而保证了红黑树的查找、插入、删除的时间复杂度最坏为O(log n)。加快检索速率。AVL 数的平衡是指左右节点的高度的绝对值不能超过1,而红黑树的平衡界定是指左右节点的深度不超过1倍。红黑树的5个性质:节点的颜色只能是红色或者黑色;根节点是黑色的;(根性质)NIL 节点的颜色是黑色;如果节点的颜色是红色,则其子节点均为黑色;(红性质)从任一节点到其后代任一叶子节点的路径上的黑色节点的数

2022-03-14 20:43:10 432

原创 常用排序算法总结

排序算法首先排序算法虽然说是很基础的算法但是在找实习的时候经常被问,让你当场就要写出来。虽然简单但是还是很容易忘掉,现在就把这个常用到的排序算法做一个总结。冒泡排序思路小结:1、一共要进行 (nums.length - 1) 次2、每一趟排序的次数在逐渐减少3、如果我们发现在某趟排序中,没有发生一次交换那么就直接提前结束冒泡排序,这就是优化算法代码实现 public class Main{ public static void main(String[] args){ int

2022-03-14 20:24:35 1012

原创 Java8新特性

Lambda一、Lambda 表达式的基础语法:Java8中引入了一个新的操作符 “->” 该操作符称为箭头操作符或 Lambda 操作符,箭头操作符将 Lambda 表达式拆成两部分:左侧:Lambda 表达式的参数列表右侧:Lambda 表达式中多虚执行的功能,即 Lambda 体语法格式一:无参数,无返回值() -> System.out.println("Hello Lambda!");语法格式二:有一个参数,并且无返回值(x) -> System.ou

2022-01-18 12:12:20 257

原创 Java 中 List 转 Array数组

首先说实话这个List 转数组,数组转List 看上去很简单其实在我开发过程中总是忘记该怎么做,所以今天做一个总结!List 转 Array数组基本方法 //首先构造一个List集合 List<Integer> list = new ArrayList<>(); list.add(1); list.add(4); list.add(7); //初始化一个需要的数组nums int[] nums = new int[list.size()]; for(int

2022-01-18 12:07:56 3699

原创 解决 Typora文件上传到码云上图片不显示问题

首先今天突然想把最近做的读书笔记整理到码云上便于以后直接在仓库上浏览,说干就干,因为我用的是 Typora 这个软件做的读书笔记,我高高兴兴的把文件上传上去,结果去检查的时候发现图片怎么没有显示出来!!!如下图:我人傻了!!!不应该啊,我明明是在Typora 中可以看的啊,为什么上传到这边就不行了呢??解决碰到问题先不要慌,想想自己开发中图片显示不出来无非就是图片地址不对,或者而说图片就没有放到对应的地址文件中!仔细看了一下源文件中的图片地址我才知道原因!第一步这个图片是放在我的本地的,所

2021-12-22 20:18:26 1473

原创 单例模式5种实现方式

前言在23种设计模式中,单例模式是第一种也是最简单的一种,但是尽管简单当其实现方式却又5种之多,所以记忆起来也是比较费劲,但是找到其中的规律的话其实也不是很难!!!!单例的五种实现方式饿汉式饿汉式单例模式,就是你创建了对象就会被返回,但是呢存在一个问题,就是即使你不要用这个那么这个单例模式也会给你创建,所以必然会造成资源的浪费。 public class Hungry { /** * 创建了多个但是呢我有没有使用那就会浪费空间 */ private byt

2021-12-20 17:37:55 40

原创 Mybatis 反向生成器配置的 .xml文件

前言我们在做项目的时候有些简单基础的 SQL 代码是没有必要我们自己去一个一个敲的,那么我们可以借助 Mybatis 强大的反向生成的功能帮我们 完成一些简单的文件 如 dao pojo xxxxMapper.xml 这三个文件。这样可以为我们简化开发!首先我们需要在 rescource 文件夹下新建一个 generactorConfig.xml 文件,然后把下面这段代码粘贴进去即可,代码中标注了你需要更改的地方!!!注意: 这边需要下载一个对应你数据库版本的连接jar包 如: mysql-conn

2021-12-13 17:35:42 750

原创 Linux 端安装 Redis

首先我们先要准备好 Redis 的安装包,将安装包通过 Xpft 软件传输到 linux 端,要是没有安装包的话那么你就要去官网下载: https://redis.io/准备工作做好之后我们就可以开始安装了!接着第一步 解压安装包 tar -zxvf redis的安装包名字第二步 配置基本环境注意:我们习惯上把 redis.conf 拷贝到另一个文件夹中,然后对该文件夹中的redis.conf 进行配置在修改这个配置文件之前我们得先配置一下基本的环境 gcc-c++ #查看一下自己电脑

2021-12-12 19:51:10 846

原创 MyBatis plugin 插件推荐

前言我们在开发项目的时候肯定会用得到 mybatis 三剑客的,其中包含 mybatis-generator mybatis plugin mybatis PageHelper 这三个,那么我们这篇文章就先介绍一下 mybatis plugin 的插件安装使用!首先首先我们为什么需要用这个插件呢???那肯定是因为项目需求啊,不然我用这个来干嘛呢?对,确实是这样,当我们在 dao 层没有很多的方法,我们要在 mapper.xml 的时候要去绑定这个名字,方法少的时候还可以接受但是一旦项目需求多了之后,需

2021-12-04 16:19:55 1193

原创 Cannot resolve plugin org.springframework.boot:spring-boot-maven-plugin:2.1.7.RELEASE[已解决Bug]

Bug今天建一个新的 springboot 项目,进去之后更换了一下 springboot 版本然后就突然告诉我 maven 的插件不能用,这整的我是脑阔疼,查阅一番之后才知道这个应该加一个 阿里巴巴的 maven 仓库 就可以!!!直接上代码!!!! <pluginRepositories> <pluginRepository> <id>alimaven spring plugin</id> <name>alimaven

2021-12-03 16:09:37 1345

原创 如何在 Windows、Linux 下安装Nginx

前言我们在布置项目的时候,如果说说项目比较小访问量比较小的话那么久直接可以布置在 Linux 端中的 Tomcat 中了,如果你是符合这样的情况的话你可以点击我的这边博客看看:springboot + vue 前后端分离项目部署到linux服务器那么当我们的服务器访问的人数很多的时候一时间突然涌进来那么很有可能吧我们的服务器给挤爆直接宕机!所以我们一般会布置多台服务器用 Nginx 进行一个反向代理缓解访问人数过多的情况!那么我们就先来入个门先把 Nginx 给装上!Windows 端安装1、先

2021-12-02 16:40:39 218

原创 RabbitMQ 如何搭建集群

我们在学习 RabbitMQ 的时候肯定会需要用到集群的,那么如何去搭建这个集群呢?这边提供一种 一主一从 的搭建方案,其他的搭建也是一样,到时候会点出来在哪里进行更改即可!首先我们要准备好一台配置好 Erlang + RabbitMQ 的服务器,至于怎么搭建这个服务器大家也可以查看我前几期的博客,那边写的很清楚!欢迎考古~

2021-12-01 16:33:33 2121

原创 RabbitMQWeb 管理界面及授权操作

前言我们在 linux 安装好了 RabbitMQ 但是为了我方便我们开发我们一般会安装一个 RabbitMQWeb 管理界面,那么如何去配置这个管理界面呢?首先我们先要在 linux 端安装配置好图形化管理的配置,在终端输入以下命令: # rabbitmq-plugins enable rabbitmq_management等待安装完成!如图:安装完成之后你要重新启动一下 RabbitMQ 即可 , # systemctl restart rabbitmq-server注意: 如果说

2021-11-29 20:23:51 1690

原创 Linux 这么下载安装 Erlang + RabbitMQ

首先我们在学习消息中间件的时候肯定会学习到 RabbitMQ 那么为什么我们要先去学习这个消息中间件呢??因为这个消息中间件是最稳定用的人最多而且他是和 SpringBoot 一个公司开发的,所以他天生就对适配 SpringBoot 有优势!但是并不是说我们其他的消息中间件不需要学,我们只是把这个做为一个入门的中间件去学。准备劝退程序员的第一步就是配置环境和安装软件,那么我们就拿 Linux 端安装 RabbitMQ + Erlang 为例,那又有人会问问什么我就安装一个 RabbitMQ 为什么还得

2021-11-29 17:34:15 1626

原创 IDEA 整合 Git 实现远程仓库管理

IDEA 整合 Git 实现远程仓库管理首先我们首先

2021-11-29 15:01:32 297

原创 Redis 怎么配置集群 “一主二从”

Redis 怎么配置集群 “一主二从”我们都知道在linux端启动redis是通过配置文件redis.conf文件启动的,执行命令 redis-server redis.conf 那么我们以一主二从的形式搭建redis集群,我们就先来复制三份 redis.conf 然后更改一下他的配置内容。复制好之后我们通过 vim redis.conf 进入配置文件中,我们要修改4个地方。1、更改端口号2、更改pid文件名3、更改logfile路径4、更改rdb文件的名称5、启动服务然后配置主机从机因

2021-11-28 14:53:26 1400

原创 Redis如何配置哨兵模式

前言我们在做项目的时候肯定是会需要建 redis 集群的,一般是 一主二从 的配置形式,我现在用的就是这个模式,就是说有一个是主机 master 另外两个是从机 slave , 主机一般负责写入数据,而从机只能负责读取数据不能写数据。但是考虑这种情况,突然主机宕机了,那么其他的两个从机就没有老大了,我们又知道从机不能写数据那这不是gg,这怎么办?我们这个时候就引入了哨兵模式,说白了哨兵模式的用处就是 他可以监视我们的主机和从机,在主机不能工作的了宕机之后,哨兵会检测他的线程是否是活跃的来判断主机有没有宕机

2021-11-27 22:01:50 4805

原创 Springboot 整合 Redis 的一些配置文件和工具类

首先在开发过程中springboot整合redis的情况是一定会遇得到的,但是我们会发现我们在用redis的时候我们必要自定义redis的配置类,这些配置类其实就是我们要对我们写进redis服务器的数据进行序列化操作,如果说你没有对数据进行序列化操作的话那么就会报错.package com.cjhstudy.config;import com.fasterxml.jackson.annotation.JsonAutoDetect;import com.fasterxml.jackson.annot

2021-11-27 16:40:15 580

原创 如何创建一个新的Node项目

首先现在正在做一个关于 vue-element-admin + node.js 的中后天开发的小项目。那么今天记录一下怎么创建一个新的node工程呢?第一找到要创建工程的文件夹位置,cmd(以管理员的身份进入)中输入 mkdir admin-huahua-node进入到该文件夹中 cd admin-huahua-node直接把这个文件初始化成一个node工程 npm init -y添加依赖 cnpm i -S express看到这样的提示就可以了。接着我们用WebS

2021-11-23 17:26:32 2283 3

原创 如何创建一个新的Vue 工程

1、Vue 工程创建步骤1、以管理员的身份进入到cmd2、创建一个工程 然后cmd进入到工程文件位置中,在cmd中输入:vue init webpack xxxx(要创建的工程名字) 一路 No下去结束3、安装依赖,我们需要安装vue-router、element-ui、sass-loader和node-sass四个插件,接着在安装axios#进入到工程目录cd xxxx(工程名字)#安装 vue-routernpm install vue-router --save-dev#安装 ele

2021-11-22 19:43:06 909

原创 Git+gitee 实现码云上的云上管理仓库

Git+gitee 实现码云上的云上管理仓库首先首先你要安装好Git 还有就是注册一个gitee 账号。那么为什么会推荐这个码云呢?而不是最大的同性交友网站 Github 呢?因为这个github老是访问的时候就崩是不是连接超时,而码云是国内的不存在这样的事主要是稳定访问快,而且和github操作功能啊都是一样的,所以这还是比较推荐的!!!其次我们在 gitee 中创建好仓库的时候我们需要去访问仓库里面的东西的时候那么我们该怎么做呢?第一步我们找到下载克隆的按钮以 ssh 的形式把连接复制下来,

2021-11-21 20:47:42 532

原创 Vue 中怎么自定义一个对象(Json数组)添加到数组中

首先在做项目的时候有时候我们在数据图中的数据很多但是我们在前端的进行Echarts 图标中并不需要那么多的数据,这就会使得我们从数据库中返回的数据变得很冗余,所以想到能不能把他变成一个我们自定义的Json对象加大我们所需要的数组中那么就大大的减少了数据量。那么如何自定义一个Json对象并加到数组中去呢????解决方法我们首先要定义一个空数组和空对象,空数组用来装我们的对象,对象就是用来接收我们所需的键值对了,上代码 //创建一个数组 let res = [] //创建一个对象

2021-11-03 20:36:16 5689

原创 Echarts 如何实现一张图现切换不同的X轴

效果图如果大家想实现如下图的效果那么久继续往下看吧,直接上动图!方法因为项目需要展示的数据图表比较多我选择的是把每一张图表封装成一个vue组件来引用。先上一个完整的代码,引用时注意在从数据库获取数据是要换成自己的数据库以及要自己定义好你需要的对象加到你设定好的数组中:<template> <div> <div id="main" style="height:350px;width:100%"></div> </div>

2021-11-03 20:23:34 932 4

原创 Echarts tooltip 自定义显示标签

问题描述我们在做项目的时候经常需要对图表中的数据进行显示那么就不得不运用到tooltip 这个配置项,他默认有显示但是我们有时候需要自定义这个label显示标签,效果图如下图所示:如果你也想跟我一下自定义显示两个自定义标签的话那么久继续往下看,实现很简单~~解决办法 tooltip: { trigger: 'axis', axisPointer: { type: 'cross' }, //自定义显

2021-11-02 21:41:30 762

原创 JS 原生过滤掉 null、undefined、空串、NaN

问题描述在开发的过程中难免在数据库中返回的时候没有对应的值可能会不存在这个值或者是 null、undefined、空串、NaN 但是我们就不需要这个数据,所以我们必须把这个多余的去除掉。如图所示:方法 let arr = this.res.map(item => item.weekX) this.weekX = arr.filter(Boolean)结果搞定~...

2021-11-01 22:26:18 587

原创 Vue 数组中出现__ob__: Observer无法取值[已解决]

问题说明在开发项目中经常要从数据库中拿到数组然后复制给新的数组使用,但是会发现有时候会发现带有 __ob__: Observer 数组后缀的就是没有办法取到值,更可怕的是 console.log 却能看得到值。数组如下图所示:解决问题那么针对这样的问题博客上基本上都是说要将数组转化成string对象运用这个JSON.parse(JSON.stringify(数组))再进行赋值,然后一顿操作数组变成空!!! 说实话根本不是这个原因,哎被坑了一下午!那么首先先解释一下为什么数组后面会出现__ob__:

2021-10-31 17:02:52 12679 19

原创 springboot+Vue 怎么解决前后端分离的跨域问题

问题描述在实际的前后端开发问题中最重要的是怎么将这两个端连接起来完成通信,又因为这个两个又可能不是布置在一台服务器中那么就必然会有跨域通信的问题!那么该怎么解决呢???(好吧,这其实是我在总结项目的时候忘了发出了~)具体如下先在springboot 的创建一个config 文件夹然后在添加这个跨域的文件 CrosConfig.java 如下图所示:代码@Configurationpublic class CrosConfig implements WebMvcConfigurer {

2021-10-22 22:04:31 143

原创 go 怎么与redis连接

首先首先必须确保是你的Git 是已经安装好的,然后查看你安装的Go时配置的GOPATH 的路径。第一步进入到这个路径目录下, 右击选取Git 这个选项,出现下面这个页面时第二步输入下面指令没有报错那么库就是安装好了$ go get github.com/garyburd/redigo/redis第三步测试连接redis库打开 golang 编译器输入下面的代码测试连接package mainimport ( "fmt" "github.com/garyburd/redigo

2021-10-16 15:07:25 399 1

react 对Props进行限制独立出的一个js包,prop-types.js

react 对Props进行限制独立出的一个js包,prop-types.js

2022-11-03

react-dom.development.js

babel.min.js下载,react相关的js包文件,助你快速入门react的hello world demo,省去找资料的时间,快人一步!

2022-11-01

react.development.js

babel.min.js下载,react相关的js包文件,助你快速入门react的hello world demo,省去找资料的时间,快人一步!

2022-11-01

babel.min.js

babel.min.js下载,react相关的js包文件,助你快速入门react的hello world demo,省去找资料的时间,快人一步!一起进步一起学习!加油冲!react是前端当前较为流行的一款语言!一起来学吧

2022-11-01

空空如也

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

TA关注的人

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