自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【IDEA】IDEA常用快捷键

Ctrl+YCtrl+Windows 键和Ctrl + R是不一样的,不要弄混。这个感觉比较常用一些,有些时候可能需要加上Fn按键。

2024-05-03 12:29:43 446 1

原创 【面试】中科软外包某银行

@RequestMapping注解用于建立请求路径与方法的对应关系。@GetMapping是用于将HTTP Get请求映射到特定处理程序的方法注解具体来说,这是一个组合注解,是@RequestMapping(method = RequestMethod.GET)的缩写。@PostMapping是用于将HTTP Post请求映射到特定处理程序的方法注解具体来说,它也是一个组合注解,是@RequestMapping(method = RequestMethod.POST)的缩写第一时间报告 leader 并进行

2024-03-01 15:37:49 672

原创 【MySQL】MVCC机制

隐藏字段undo log 版本链readView我们存储的数据会默认也存储两个隐藏字段,分别为当前修改的事务 id 和 roll_pointer 回滚指针undo log 是回滚日志,存储老版本的数据。多个事务操作某一行数据,记录不同事务修改数据的版本,通过回滚指针形成的链表叫做 undo log 版本链readView 解决了事务查询选择版本的问题,根据 readView 的匹配规则和当前事务 id 判断该访问哪个版本的数据。不同隔离级别 readView 是不一样的,最终访问结果也是不同的。

2024-02-29 18:46:32 939

原创 【面试】软通动力外包华为智能汽车

先大概介绍一下结构:RabbitMQ分为生产者、消费者、信道(channel),broker,虚拟机,交换机,队列几个部分。生产者发送消息通过信道发送到交换机上,交换机在通过一定规则发送给队列,然后消费者去对应队列中去获取消费即可。交换机分为很多种,按照不同规则发送到不同队列没准备好,挺突然的。以为只是简单聊聊,结果这是初轮电话面试,估计凉凉,总结继续投简历。

2024-02-28 16:21:53 766 3

原创 【MySQL】redo log和undo log

redo log 是重做日志,记录的是事务提交时数据页的物理修改,用来实现事务的持久性redo log 由两部分组成:重做日志缓冲(redo log buffer)和重做日志文件(redo log file)。前者是在内存中,后者在磁盘中。当事务提交后会把所有修改信息存到该日志文件中,用于刷新脏页(内存中修改过的文件叫做脏页)到磁盘,发生错误时进行数据恢复使用。

2024-02-28 13:42:20 1060

原创 【底层学习】HashMap源码学习

注意:JDK1.7 及以前:HashMap 底层是数组+链表JDK1.8 之后:HashMap 底层是数组+链表 或者 数组+红黑树存储在 HashMap 集合中的元素都将是一个 Map.Entry 的内部接口的实现什么时候采用数组+链表,什么时候采用数组+红黑树,以及相互转换,取决于链表(红黑树)的长度。当链表长度大于 8 会转为红黑树,当链表长度小于 6,红黑树转为链表。

2024-02-27 19:43:49 916

原创 【底层学习】ArrayList源码学习

学习源码前,我们还是先看一下ArrayList中成员变量有哪些。

2024-02-26 20:42:02 917

原创 【面试】找工作历程

Java求职面试历程

2024-02-26 18:14:05 476

原创 【JVM】MySQL驱动加载如何打破双亲委派机制

上文根据,本文详细介绍驱动的加载如何打破了双亲委派机制详细内容可以参考之前文章,在这里简单做个回顾。

2024-02-23 16:50:38 584

原创 【JVM】Java中SPI机制

中提到SPI和JDBC相关内容,那么是如何打破双亲委派模型呢?本文进行一个讲解,在开始讲解之前,我们需要先了解Java中的SPI机制。

2024-02-23 16:40:28 1025

原创 【Redis】Redis的数据分布算法

一共有五种算法,分别为:哈希算法、一致性哈希算法、带有限负载的一致性哈希算法、虚拟节点一致性哈希算法、虚拟槽分区。

2024-02-21 14:17:02 1260

原创 【RabbitMQ】RabbitMQ面试热点

Server:又称为broker,接受客户端连接,RabbitMQ 节点;Connection:连接,应用程序与brokder建立网络连接;channel:网络通道,几乎所有的操作都是在channel中进行的,是进行消息对象的通道,客户端可以建立 多个通道,每一个channel表示一个会话任务Virtual Host:虚拟机,一个节点由若干个虚拟机组成;Exchange:交换机,一个虚拟机由若干个交换机组成;Queue:消息队列,和交换机通过routing key绑定。

2024-01-22 11:00:38 1408

原创 【Redis】Redis面试热点

Redis 是纯内存操作,执行速度非常快,它的性能瓶颈是网络延迟,而不是执行速度。I/O 多路复用模型就是为了实现高效的网络请求。注意:有些时候,我们可能看到说Redis6.0之后引入多线程,在这里引入多线程要明白,是指接收网络请求,指令转换的那一部分采用多线程,是为了进一步解决网络瓶颈,并不是执行命令的时候。Redis执行命令依旧是单线程。

2024-01-11 16:05:25 1071

原创 【Redis】Redis分布式锁

首先看下面这段代码:这是一段抢券代码,看着没什么问题,但是当是多线程情况下,那么就可能出现并发问题,出现超卖。为了解决这个问题,我们可能会加锁,那么接下来看加锁后的代码:这段代码已经完美解决了超卖的问题,但是我们要想,如果我们的项目是单体项目,且只启动了一台服务,那么上面加锁后的代码是没问题的。但我们的项目往往是集群部署,把同一份代码部署再多台服务器上。如下图所示:如果是这样的话,那么我们加锁的逻辑就又出现问题了。看下面逻辑:左边是 8080 服务线程,右边是 8081 服务线程。

2024-01-10 14:33:48 712

原创 【Redis】Redis数据过期策略、数据淘汰策略

首先,我们要知道Redis的数据过期策略是惰性删除和定期删除结合使用。

2024-01-10 14:21:00 556

原创 【Redis】Redis持久化方式

Redis 中有两种持久化方式,分别为RDB和AOF。

2024-01-10 14:06:36 627

原创 【JVM】类加载器

(启动类加载器):最顶层的加载类,由 C++实现,通常表示为 null,并且没有父级,主要用来加载 JDK 内部的核心类库( %JAVA_HOME%/lib目录下的 rt.jar、resources.jar、charsets.jar等 jar 包和类)以及被 -Xbootclasspath参数指定的路径下的所有类。(扩展类加载器):主要负责加载 %JRE_HOME%/lib/ext 目录下的 jar 包和类以及被 java.ext.dirs 系统变量所指定的路径下的所有类。

2024-01-08 13:44:17 1114

原创 【JVM】类加载过程

简单概括共有 7 个阶段:加载(Loading)、验证(Verification)、准备(Preparation)、解析(Resolution)、初始化(Initialization)、使用(Using)、卸载(Unloading)。其中,验证、准备和解析这三个阶段可以统称为连接(Linking)。

2024-01-08 13:31:28 616

原创 【JVM】垃圾回收机制

JVM垃圾回收机制

2024-01-06 21:23:20 1314

原创 【JVM】Java内存区域详解

JVM内存区域学习

2024-01-06 21:12:45 1105

原创 【排序】快速排序

快速排序具体实现

2024-01-05 15:37:07 458

原创 【链表】力扣206反转链表

力扣206反转链表详细解析

2024-01-05 15:25:03 479

原创 【数组】力扣704二分查找

在二分查找的过程中,要保持不变量,就是在while寻找中每一次边界的处理都要坚持根据区间的定义来操作,这就是。首先当看到有序的,升序的,没有重复的元素,那么就要想到使用二分查找方法。问题,二分查找中,边界的控制十分重要。其次要确认的就是把握。

2024-01-05 15:15:51 473

原创 【Spring Boot】properties文件和yml文件优先级顺序

properties文件与yml文件优先级确定

2023-05-21 01:29:48 187

原创 【Ubuntu】Ubuntu系统下安装ElasticSearch以及ik拼音分词器

ubuntu安装ES以及ik分词器

2023-01-09 17:20:17 715

原创 【Linux】Linux本地远程查看服务器日志

本人在Ubuntu上开发,有时候测试环境出现错误需要排查,所以写一篇博客记录远程查看服务器日志。

2022-11-05 10:45:23 1658

原创 【Ubuntu】Ubuntu系统下使用docker安装MySQL8

ubuntu系统下使用docker安装MySQL

2022-08-30 20:01:02 1473

原创 【Ubuntu】Ubuntu系统下常用命令(持续更新)

Ubuntu系统下快捷键记录

2022-06-25 14:03:22 274

原创 【Ubuntu】Ubuntu系统安装maven及本地仓库设置

Ubuntu系统下设置maven注意事项

2022-06-25 13:43:21 5024

原创 【Linux】Linux上网络服务起不来,显示network.service failed

今天用FinalShell连接虚拟机,死活连不上,后来修改一下静态IP地址,重启网络提示network.service failed、显示Failed to start LSB:Bring up/do...解决办法:将networkmanager服务停了systemctl stop NetworkManagersystemctl disable NetworkManager重启网络systemctl restart network ...

2022-02-16 16:49:04 7247 2

原创 【IDEA】关于IDEA的Service服务开启不显示端口号问题解决办法

关于如何显示IDEA的service开启不显示端口号问题:1、找到你的电脑如下路径:C:\用户\你的用户名\AppData\Local\Temp里面的文件hsperfdata_你自己用户名,把这个文件夹删了,然后重启IDEA。2、进到IDEA后,连摁两下Shift,输入Dashboard ,然后点击运行你想要的服务,即可显示端口号...

2022-01-19 20:18:56 3308

原创 【Linux】使用Docker启动RabbitMQ报错WARNING: IPv4 forwarding is disabled. Networking will not

学习Linux上面使用docker操作开启RabbitMQ,但是执行命令之后报错:WARNING: IPv4 forwarding is disabled. Networking will not work.解决办法:修改配置文件:vim /usr/lib/sysctl.d/00-system.conf追加以下内容:net.ipv4.ip_forward=1重启网络:systemctl restart network然后将之前错误的Rabbit删掉:docker rm -f mq重新创建启动

2022-01-16 19:05:23 1239

原创 【Linux】如何设置静态IP地址

设置静态IP地址步骤:1、我们需要编辑/etc/sysconfig/network-scripts/ifcfg-ens33这个配置文件,命令如下:vim /etc/sysconfig/network-scripts/ifcfg-ens33进去之后的界面如下:2、把BOOTPROTO="yes"这一栏从原来的yes改为BOOTPROTO="static"PS:我这里是因为改过了,所以显示的是static3、然后添加以下内容(在哪里添加都可以):IPADDR="192.168.131.129

2022-01-02 20:12:26 4621 1

原创 修改了IDEA的Custom VM Options选项打不开的解决办法

最近闲来无事,更新了IDEA到2021.3的版本,因为某些原因调了一下Custom VM Options这个选项,然后重启IDEA,发现死活打不开了,后来网上找了找,按照下面的方法即可解决:找到C:\Users\LJP17\AppData\Roaming\JetBrains\IntelliJIdea2021.3路径下的idea64.exe.vmoptions这个文件,然后删除,就能打开IDEA了。...

2021-12-06 08:22:33 2909 2

原创 会话跟踪技术介绍总结

会话跟踪技术在我当前学习,分为Session和Cookie两种会话技术。简单来看,一次会话,就像是一次人与人之间的通话一样,只不过会话是浏览器和服务器之间的“通话”。我们都知道,现在任何“通话”都是基于HTTP协议的,但是呢,HTTP协议是无状态的。何为无状态?简单来理解就是没有记忆能力的。浏览器一次会话中,每次新的请求对于服务器来说都是新的,那这肯定不行吧?所以说,就有了Cookie和Session的出现。Cookie和Session就是为了解决HTTP无状态的问题,让同一次会话的多次请求间可以共享数

2021-11-17 20:39:36 214

原创 git在idea中的操作及如何上传码云

1,首先设置git路径,让idea得到你的git:2,让项目工程关联git会弹出框,选择git,然后点击OK关联成功的样子:3,添加代码到暂存区4,添加到暂存区之后的样子,文件颜色变为绿色**5,提交代码到master(本地仓库),选择想要提交到码云上面的代码(或者文件夹),然后右键。**6,提交代码需编写如下位置,然后点击commit按钮。上面红色是你选择想上传的文件,下面是你要编写的注释信息,就是例如谁上传,什么时候上传这些信息7,提交完成代码之后,你会看到如下信息:文

2021-11-13 14:56:49 2985

原创 MySQL中json_set()函数的使用

json_set()这个函数在我看来,好像具备两个作用,一个是插入作用,能替代json_insert()函数,另一个就是替换作用,能替代json_replace()函数。下面具体来看:插入作用:数据库中 id =16的数据如下所示:使用json_insert()函数后,如下所示,插入了age:30接下来使用json_set()函数,向 id =16的data中添加hobby,(注:这里可能有些伙伴会好奇,上面添加了age,我再添加一个hobby,为什么age不见了,这是因为我用的是select

2021-06-29 15:13:15 9900

原创 MYSQL中带有JSON类型的表

MYSQL中带有JSON类型的表最近实训期间学会了一些关于MySQL json的东西,就随笔记下,以后用到随时可用。用老师的话来讲就是,对于关系型数据库中的表来说,通常都会有一列为主键列,主键可以完全代表这一行记录,两列足够,真正的数据是json列。主键还分为业务主键和自然主键(与行信息无关,也就是1,2,3,4,5,6…),通常用自然主键比较多;主键列类型分为整数(从1开始自增)和字符串。下面就是一些创建表,以及插入的操作创建id号自增的表aa:插入数据到表aa中:insert into

2021-06-29 11:06:27 486

空空如也

空空如也

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

TA关注的人

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