自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 资源 (1)
  • 问答 (1)
  • 收藏
  • 关注

原创 2021年春招面经(一)

文章目录前言一、笔试环节(部分)1. 请描述一下String、StringBuffer和StringBuilder之间的区别2.手写一个单例模式或工厂模式(二选一即可)3.线程有几种实现方式?详细描述一下4.同步有几种实现,把你知道的描述出来二、技术面试环节1.Java基础(顺序可能不太准确大家将就看一下)1.1 StringBuilder和StringBuffer有什么区别?1.2 String类可以被继承吗?为什么1.3 继承和实现接口有什么区别?1.4 创建对象实例有几种方式?1.5 Java有几种基

2023-07-23 00:38:33 714

原创 Linux服务器监控性能测试

Linux服务器监控性能测试前言在这里最重要的是 一些性能指标的正确认识和分析,以及常见工具的正确使用,那可以说在性能测试方面就可以成功一半了。1.服务器性能测试范围测试目的:发现服务器的性能瓶颈。配置的不同能够承载的最大任务数不同,能够承载的压力也不同。测试范围以及性能指标:CPU、内存、磁盘、网络、版本上面五个指标里面可能版本是有点难以理解,版本会影响各个软件适配版本甚至OS本身的命令,比如CentOS7和CentOS6就是有大不同的。因为硬件版本其实大部分情况下都是不同,所以我们一定要保证

2022-02-07 14:43:35 1282

原创 CentOS安装Redis

文章目录一、安装环境二、下载安装包1.wget下载2.手动下载三、安装redis1.进入解压目录编译redis文件四、将redis转成服务1.安装路径2.配置环境变量3. 进入utils文件目录4.启动服务5.服务开机自启动一、安装环境由于redis是有C语言开发的,所以先确保centos上有gcc环境 yum install -y gcc二、下载安装包1.wget下载wget http://download.redis.io/releases/redis-6.2.1.tar.gz //

2021-05-04 15:04:51 456

原创 leetcode剑指offer03 数组中重复的数字

文章目录一、题目内容二、思路分析1.思考过程12.思考过程23. 改进版哈希表法4.特殊方式:原地置换法分析环节一、题目内容找出数组中重复的数字。在一个长度为 n 的数组 nums 里的所有数字都在 0~n-1 的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。输入:[2, 3, 1, 0, 2, 5, 3]输出:2 或 3 限制:2 <= n <= 100000二、思路分析1.思考过程1

2021-04-17 16:41:10 267

原创 Spring Boot 快速连接到 Redis

文章目录前言一、安装RedisRedis安装流程:文件解压,编译make ,修改配置文件,启动。具体自行百度二、创建Spring Boot项目1.打开IDEA,创建Spring Boot项目2.在pom文件中引入依赖3.编写测试代码总结前言本文主要讲解如何快速程序连接打Redis,进行一些常规操作一、安装Redis此处需要同学有一个可以ping通的设备。以下两个套餐都可以凡人版:VMWare + Centos7 (关闭Centos的防火墙)欧皇版:云服务器(端口要在安全组中放出来)Red

2021-04-12 19:42:30 656

原创 Could not transfer artifact XXX:XXX:pom:XX from/to镜像地址

Could not transfer artifact XXX:XXX:pom:XX from/to镜像地址记录一次非网络问题导致的下载依赖失败的过程,首先报错信息是这样的Could not transfer artifact org.springframework.boot:spring-boot-starter-parent:pom:2.4.1 from/to alimaven (http://maven.aliyun.com/nexus/content/groups/public/): C:\Pr

2021-04-11 16:35:36 1707 1

原创 重装系统后小喇叭显示未安装音频输出设备

重装系统后小喇叭显示未安装音频输出设备首先我先提供一下本机信息,机器是联想小新pro13。前因说明一下前因,因为用户名是中文的原因导致我在开发的时候出现了一下不可抗力的因素,再加上一些其他必要的原因,我备份了我所需要的文件,上传至百度网盘之后,然后开始重置电脑了,但这就是今天不顺利的开端。重置电脑到100%之后,联想小新的logo就开始不停的定时闪烁,时间间隔大概每隔5秒左右闪一下,黑了,闪一下,黑了…,我原以为这是他在进行系统层面的配置,也没管他,就开了一把王者。但等我一把打完,机器依旧是这样,然

2021-04-10 22:21:20 3807

原创 Socket网络编程回顾

Socket网络编程回顾概述Socket(套接字)是两台主机之间的逻辑连接点。Socket是通信的基石,支持TCP/IP协议的网络通信的基本操作单元。它是网络通信过程中的端点的抽象表示,包含进行网络通信的五个基本要素信息:​ 1.连接用的协议​ 2.本地主机的IP+端口​ 3.远程主机的IP+端口Socket基本使用流程​ Socket编程主要涉及到两个端:服务端和客户端(Server and Client).​ 首先,在服务端创建一个服务器套接字(ServerSocket),并把它附加到

2021-04-05 17:02:44 639

原创 聊聊空指针异常(一)

聊聊空指针异常(一)今天来和大家聊聊NPE问题,也就是空指针异常。大家在开发中都会遇到这个问题 – 空指针异常。这种问题其实解决不是很难,但确实一个需要养成习惯。俗话说江山易改,本性难移。想要尽可能少的写出有NPE的代码,其实从本质上就是一个战胜自己本性的问题。那么如何从根源上解决空指针呢?希望你看完这篇文章之后能有一个你自己的理解。什么是空指针?​ 空指针异常(java.lang.NullPointException),也叫做NPE问题。​ 其实不仅仅是在Java语音,在其他语言中也会有,而且

2021-03-23 21:38:30 654

原创 认识索引(三)

认识索引(三)上一节我们简单学习了索引原理的前置知识:二分查找算法、Hash结构和B+树结构。我们了解了这些知识之后,本节就要来讲一讲索引中的聚簇索引和非聚簇索引、主键索引和辅助索引(二级索引)。简单回顾​ Q:简单的说说在数据库索引应用中为什么不用Hash结构、B树结构,而是要采用B+树结构呢?​ A:1. 首先我们知道Hash结构索引的基本结构是比较适合等值查询,而它的范围查询是需要进行全表扫描的,但数据库表中进行全表扫描是禁止的(直接开除,和redis中使用keys * 是一样的下场)。​

2021-03-21 12:58:35 90

原创 认识索引(二)

认识索引(二)上一节我们简单的回答了索引是什么、常见的索引分类,以及简单的讲解了根据应用层次划分的各个索引。这一节,我们将会先从索引的基础理论知识开始讲起,也就是二分查找法、Hash和B+Tree.简单回顾​ Q: 简单说说什么是索引?​ A:索引就是存储引擎用于快速查找数据记录的一种数据结构。需要额外开辟空间和数据维护。另外,索引是物理数据页存储,在数据文件中(innoDB,ibd文件),利用数据页(page)存储。索引可以加快检索的速度,但同时也会降低增删改的操作熟读,索引维护需要代价。二分查

2021-03-20 22:05:34 90

原创 认识索引(一)

认识索引(一)其实很多小伙伴不是很明白索引的认识和使用,因为大学中的数据库课程中虽然有讲到,但是估计有70%的同学都是没有深入理解,甚至很多程序员在进入工作之后,依旧不是很明白索引的使用(比如当初进入公司第一个月实习的我),所以打算好好整理一下关于索引的知识点,Mysql是大家在使用中比较常见的数据库,我们就以它来作为例子。什么是索引首先我在使用索引之前,先要了解什么是索引?​索引其实就是一种提升数据库查找数据速度和效率的一种数据结构。​所以它就是来加快查询速度的,也就是更快的查。因为我们在增删查

2021-03-20 15:51:58 170

原创 记录一次线上排除故障的经历

记录一次线上排除故障的经历这篇博客是用来记录一次紧急线上排除故障的经历,仅供参考使用。时间发生在2021年3月的某一天,我还记得那天是一个阴天,我正在乘坐地铁前往公司,但是在8点31分左右,手机上打来了一个电话,是和我对接客户打来的,大意现在系统出现了网络不稳定,出现了许多业务响应时间过长,刷新偏慢的问题。于是,打算9点上班排查一下问题。此时,我还不知道这个非常紧急,因为此时业务还是能正常使用的,就是比较慢。但是, 当第二个电话打来的时候,我不淡定了,窗口服务停止,此时我看了手机8点46分,于是开始在

2021-03-18 14:11:29 183 1

原创 docker安装

docker安装记录一般我们可以进入docker官网进行观看,但因为特殊原因无法访问这时候我们可以进入阿里云观看安装docker的指南教程。阿里云开发者平台开发者平台官网地址:可以参考阿里云官网提供的docker安装教程进行安装https://www.aliyun.com/登录 , 弹性计算, 容器镜像服务,镜像加速器 , 操作文档 docker-ce1. 前置条件sudo yum install -y yum-utils device-mapper-persistent-data lv

2021-02-10 00:10:31 122

原创 Java面试题记录(2)

Java面试题记录(2)面试题一:通常一个Xml映射文件,都会写一个Dao接口与之对应,请问,这个Dao接口的工作原理是什么?Dao接口里的方法,参数不同时,方法能重载吗?答:Dao接口,就是人们常说的Mapper接口,接口的全限名,就是映射文件中的namespace的值,接口的方法名,就是映射文件中MappedStatement的id值,接口方法内的参数,就是传递给sql的参数。如何在华为云搭建图片的服务器Mapper接口是没有实现类的,当调用接口方法时,接口全限名+方法名拼接字符串作为key

2020-07-31 11:21:30 173

原创 Java面试题记录(1)

Java面试题记录(1)面试题一:请说说MyBatis的工作原理?1)读取 MyBatis 配置文件:mybatis-config.xml 为 MyBatis 的全局配置文件,配置了 MyBatis 的运行环境等信息,例如数据库连接信息。2)加载映射文件。映射文件即 SQL 映射文件,该文件中配置了操作数据库的 SQL 语句,需要在 MyBatis 配置文件 mybatis-config.xml 中加载。mybatis-config.xml 文件可以加载多个映射文件,每个文件对应数据库中的一张表。

2020-07-31 11:15:43 172

原创 浅谈性能优化有哪些指标

本篇博客主要是从理论角度浅谈一下一些可以性能优化的点,也算是我的学习整理。首先就是我们一般对于复杂事物在不直观的情况下,我们往往会去计算统计某些指标来进行来作为衡量决策的参考。这个都是比较好理解的,但到了性能的优化上,我们却往往缺乏一些可以支撑的理论知识而选择了错误的优化方式,或者就是没有定位好那些重要的需要优化的地方,导致优化效果不佳。在进行优化的时候不要盲猜,我们需要有一些可以衡量的指标来进行测试和参考。所谓性能,就是使用有限的资源在有限的时间里完成工作。最主要的衡量指标是时间,所以我们在作图的时候

2020-07-19 17:12:34 1789

原创 关于单例模式的理解(二)

关于单例模式的理解(二)在上一篇中我们简单的说了一些关于单例模式的简单知识,这篇就让我们来深入的探讨一下关于懒汉模式的优化。之前我们说到,懒汉模式是常用的,但是它又是线程不安全的,所以我们自然而然的会想到使用同步代码的关键字synchronized来修饰getInstance()方法,如下图所示/** * 懒汉模式 * 单例实例在第一次使用时进行创建 */@ThreadSafe@NotRecommendpublic class SingletonExample3 { // 私有构造

2020-07-13 21:51:22 124

原创 关于单例模式的理解(一)

对于大部分的小伙伴来说去面试的时候,总有几个公司会跳出来问你会设计模式吗?而我们大部分的回答都是单例模式,工厂模式,装饰器模式。。。。。。然后,再问你知道单例模式具体有几种写法?你会回答懒汉和饿汉,然后面试者叫你手写你就有可能蒙蔽了。单例模式,顾名思义,单例就是只有一个,说明在创建的时候在全局状态下只需要创建一个即可,创建多个不仅开销大,而且很有可能不符合创建用意。而我们说到的懒汉和饿汉模式,就是指在什么时候进行创建。懒汉模式,一般都是在第一次使用调用的时候进行创建,饿汉则是在类加载的时候就已经创建好了

2020-07-13 14:42:21 193

原创 Java 基于SchedulingConfigurer接口来实现定时任务

Java SchedulingConfigurer来实现定时任务 写这个博客的来记录的由来是,再工作中因为原先都是使用注解的方式来实现定时任务的实现,比如@Scheduled,首先这个方式比较方便的,但它是静态的,也就是单线程的,所以当有多个任务运行的时候,有可能该定时任务会受到其他任务的影响,所以我一般在工作中都是使用基于接口实现的定时任务,这是动态的,也就是基于接口SchedulingConfigurer。废话不多说,直接上代码:@Configuration@Componentpubli

2020-07-01 11:22:58 1901

gala的maven资源.zip

maven3.6.3 的 zip包 tar包 maven3.8.1的zip包

2021-04-11

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

TA关注的人

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