自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(44)
  • 资源 (1)
  • 收藏
  • 关注

原创 linux经常用到的命令

【代码】linux经常用到的命令。

2023-05-27 10:05:36 113

原创 spring循环依赖

spring循环依赖:

2023-05-08 16:19:21 97

原创 自定义注解切面

【代码】自定义注解切面。

2023-05-08 16:17:00 195

原创 mysql相关日志

MySQL日志的类型:通用查询日志:记录连接起始时间和连接终止时间内,所有用户的所有操作

2023-05-08 16:11:45 77

原创 static

【代码】static。

2023-05-06 11:52:07 37

原创 mysql主从复制原理

主从复制

2023-02-26 21:46:44 45

原创 mysql查询优化

mysql查询优化

2023-02-26 21:40:30 43

原创 mysql索引失效

mysql索引失效场景

2023-02-26 16:09:01 39

原创 mysql索引分类

mysql索引分类

2023-02-26 14:36:16 47

原创 mysql的存储引擎

MySQL的存储引擎

2023-02-26 12:45:56 42

原创 Linux

1.find命令find [路径] -name “.sh" 查找指定路径下.sh结尾的文件。find -name ".sh” 省略路径就是查找当前目录下.sh结尾的文件。find命令可以和通配符结合使用。2.ln -s 被链接的源文件 链接的文件作用:建立文件的软连接,类似于快捷方式。注意:没有-s 选项建立的是一个硬链接文件。硬链接和源文件都指向同一个节点,所以内容是同步的。两个文件占用相同大小的磁盘空间,工作中几乎不会建立文件的硬链接。源文件要使用绝对路径,这样移动链接文件后

2022-01-17 14:29:50 134 1

原创 MapReduce

MapReduce1.Map:分片中的每一条记录K-V都会调用一次Map函数,生成一个新的K-V。Map的输出结果首先是存在一个环形缓冲区的buffer in memory(大小默认是100M,由io.sort.mb属性决定)。2.shuffle(map输出后,reduce输入前):Collect收集阶段:在用户编写map()函数中,当数据处理完成后,一般会调用OutputCollector.collect()输出结果。在该函数内部,它会将生成的key/value分区(调用Partitioner

2022-01-17 14:29:20 134 1

原创 Redis

命令不区分大小写,Key区分大小写String使用场景:点赞,订单里要购买得数量加减,分布式锁String set k1 v1 get k1 mset k1 v1 k2 v2 mget k1 k2 INCR a1 INCRBY a1 3 DECR a1 DECRBY a1 3Hash (结构Map<Sting,Map&l.

2022-01-17 14:18:19 229 1

原创 mysql的MVCC

MVCCMVCC的实现:依赖于:隐藏字段、Undo Log 、readView

2022-01-17 11:37:15 711

原创 SpringAOP

一、AOP执行顺序Spring4和Spring5的执行顺序:二、循环依赖构造器注入无法解决循环依赖。以set方式注入依赖。三、spring的三级缓存解决spring循环依赖----spring的三级缓存。public class DefaultSingletonBeanRegistry extends SimpleAliasRegistry implements SingletonBeanRegistry { /** Maximum number of suppressed exce

2022-01-15 11:51:15 125 1

原创 AQS的整理

1、可重入锁可重入锁:一个线程获取外部方法的锁后,可以直接获取内层方法的锁(两个锁必须是同一个锁对象)synchronized和ReentrantLock都是可重入锁避免一定程度的死锁lock加锁和解锁必须成对出现。少了unlock()会使其他线程阻塞。public class RentrantLock { public static void main(String[] args) { ReentrantLock lock = new ReentrantLock()

2022-01-15 08:15:01 135

原创 Synchronized和lock的原理和区别

一、Synchronized1、synchronized原理:1.1、方法级的同步锁非静态同步方法锁的是当前对象public class MyLock { public static void main(String[] args) throws InterruptedException { Phone phone = new Phone(); new Thread(()->{ phone.sendEmail();

2022-01-13 14:10:18 1520

原创 了解线程池

什么是线程池:线程池就是事先将多个线程对象放到一个容器中,当使用的时候就不用 new线程而是直接去池中拿线程即可,节省了开辟子线程的时间,提高的代码执行效率线程池的作用:节省创建子线程的时间线程复用控制最大并发数管理线程自定义线程池:1、yml配置thread:executor: corePoolSize: 16 maxPoolSize: 32 maximumPoolSize: 1000L2、ThreadProperties类@Data@Component

2022-01-13 10:20:02 577

原创 死锁的条件

死锁的条件15、什么情况下会产生死锁?产生死锁的原因:(1) 因为系统资源不足。(2) 进程/线程运行推进的顺序不合适。(3) 资源分配不当等。如果系统资源充足,进程的资源请求都能够得到满足,死锁出现的可能性就很低,否则就会因争夺有限的资源而陷入死锁。其次,进程运行推进顺序与速度不同,也可能产生死锁。产生死锁的四个必要条件:(1) 互斥条件:一个资源每次只能被一个进程使用。(2) 请求与保持条件:一个进程因请求资源而阻塞时,对已获得的资源保持不放。(3)&nbsp

2022-01-11 15:13:01 370

原创 线程的生命周期

线程的生命周期14、线程的状态转换有什么?(生命周期)(1)新建状态(New) :线程对象被创建后,就进入了新建状态。例如,Thread thread = new Thread()。(2)就绪状态(Runnable): 也被称为“可执行状态”。线程对象被创建后,其它线程调用了该对象的start()方法,从而来启动该线程。例如,thread.start()。处于就绪状态的线程,随时可能被CPU调度执行。(3)运行状态(Running):线程获取CPU权限进行执行。需要注意的是,线程只能从就绪状态进入

2022-01-11 15:09:08 84

原创 HashMap

构造器【1】空参构造器调用空参构造器,当向集合添加数据的时候【2】调用有参构造器put方法hash表中的单向链表节点个数达到8,并且数组长度超过64,链表就会变为红黑树 当元素个数小于6,则还会变为链表结构,如果一直是删除操作,则到2个才会变为链表 HashMap的底层实现结构 数组+链表+红黑树 HashMap的添加原理 ① 计算key的hash值 ② 根据key

2022-01-11 14:54:46 91

原创 StringBuffer和StringBuilder

1、StringBuilder【1】StringBuilder构造器/**public final class StringBuilder extends AbstractStringBuilder //StringBuilder 继承 AbstractStringBuilder implements java.io.Serializable, CharSequence*///1. StringBuilder空参构造器public StringBuilder()

2022-01-11 13:10:52 60

原创 String

构造器【1】空参构造器String a=new String();空构造器将字符串常量池中的空串"" 的地址赋给了value变量//空参构造器底层是将空字符串""对应的字符数组赋值给正在创建的对象apublic String() { this.value = "".value; }空字符串底层对应的数组什么都没有,只是创建了一个对象而已【2】参数为String的构造器String b=new String("abc");//带String

2022-01-11 12:51:24 62

原创 静态代理和动态代理

静态代理如果按照代理创建的时期来进行分类的话,可以分为两种:静态代理、动态代理。静态代理是由程序员创建或特定工具自动生成源代码,再对其编译。在程序员运行之前,代理类.class文件就已经被创建了。动态代理是在程序运行时通过反射机制动态创建的。动态代理Proxy是所有动态生成的代理的共同的父类,这个类有一个静态方法Proxy.newProxyInstance(),接收三个参数:1.ClassLoader loader:指定当前目标对象使用的类加载器,获取加载器的方法是固定的2.Class

2022-01-11 10:16:14 803

原创 hadoop学习--HDFS

HDFS1. HDFS(Hadoop Distributed File System)HDFS是Hadoop项目的和核心子项目,是分布式计算中数据存储管理的基础,基于流数据模式访问和处理超大文件的需求而开发的,可以运行于廉价的商用服务器上。具有高容错、高可靠、高扩展性、高获得率、高吞吐率等特征。2.HDFS体系架构2.1 HDFS是什么?HDFS是一个主从(Master/Slave)体系结构:master和slave都工作。还有一种主备体系结构,主工作,备用不工作。从用户角度来看,他就像传统的文件

2022-01-10 19:36:02 174

原创 mysql索引底层结构

Mysql索引优化 ---- 介绍1、索引是什么MySQL官方对索引的定义为:索引(Index)是帮助MySQL高效获取数据的数据结构。可以得到索引的本质:索引是数据结构,索引的目的是提高查询效率,可以类比英语新华字典,如果我们要查询MySQL这个单词,首先我们需要在目录(索引)定位到M,然后在定位到y,以此类推找到SQL。如果没有索引呢,那就需要从A到Z,去遍历的查找一遍,直到找到我们需要的,一个一个找和直接根据目录定位到数据,是不是差的天壤之别呢,这就是索引的妙用。2、索引底层数据结构当数据

2022-01-10 19:34:36 1092 1

原创 布隆过滤器

布隆过滤器

2022-01-10 19:33:12 167

原创 redisson的分布式锁的使用

redisson的使用:1、引入依赖 <!-- redisson 分布式锁--> <dependency> <groupId>org.redisson</groupId> <artifactId>redisson</artifactId> <version>3.15.3</version> </dep

2022-01-09 15:10:01 3319 1

原创 @ConfigurationProperties和@EnableConfigurationProperties

spring: redis: password: zzq12345 host: 192.168.126.188 port: 6379 main: allow-bean-definition-overriding: true@ConfigurationProperties(“spring.redis”)利用yml里的配置给自定义的配置类里的属性赋值/** * redisson配置信息 */@Data@Configuration@Configuration

2022-01-09 11:54:43 237

原创 全局异常处理和定义异常处理

异常处理

2022-01-09 10:43:59 170

原创 mysql优化 - show profiles

show profiles一、show profile是什么?show profile是MySQL提供可以用来分析当前会话中SQL语句执行的资源消耗情况。可以用于SQL的调优测量。默认情况下,参数处于关闭状态,并保存最近 15 次的运行结果。二、查看show profile 是否打开。默认关闭。-- show variables like 'profiling'; -- 查看show profile s是否打开。-- set profiling = on 或者 set profiling = 1;

2020-12-21 10:21:07 166

原创 mysql优化 - explain

一、explain是什么?explain可以模拟优化器执行sql查询语句,从而知道mysql是如何处理我们的sql的。分析查询语句或者表结构的性能瓶颈。语法:Explain + SQL 语句;如:Explain select * from user; 会生成如下 SQL 分析结果,下面详细对每个字段进行详解explain select * from actor;+----+-------------+-------+------+---------------+------+--------

2020-12-20 16:01:54 107 2

原创 mysql-InnodB事务隔离级别

mysql的事务隔离级别一、查看mysql事务隔离级别:mysql> select @@tx_isolation;+----------------+| @@tx_isolation |+----------------+| READ-COMMITTED |+----------------+二、修改mysql事务隔离级别:set [ global | session ] transaction isolation level Read uncommitted | Read co

2020-12-15 16:53:54 135

原创 hive中drop table tab_name卡死

最近在hive学习时遇到drop table时卡死,删除失败的情况。

2020-11-19 12:29:49 724 2

原创 beeline连接不上hive2

hadoop103用beeline连接hadoop102报错beeline> ! connect jdbc:hive2://hadoop102:10000Connecting to jdbc:hive2://hadoop102:10000Enter username for jdbc:hive2://hadoop102:10000: rootEnter password for jdbc:hive2://hadoop102:10000: *****20/11/17 18:53:47 [mai

2020-11-17 11:19:42 1660

原创 Hadoop学习--(大数据)

Hadoop学习–(大数据)一、大数据概念:大数据是指在一定时间内无法用常规软件工具进行捕捉、管理和处理的数据集合。大数据主要是解决海量数据的存储和分析计算。二、大数据特点:大量高速(产生速度)多样:结构化数据:以二维表来逻辑表达和实现的数据。例如:文本文件、库表非结构化数据:没有固定的结构。视频、图片半结构化数据:存储的数据信息类似结构化,但本身以非结构化数据存储。 半结构化数据,属于同一类实体可以有不同的属性,即使他们被组合在一起,这些属性的顺序并不重要。常见的半结构数据有

2020-10-16 09:56:03 196

原创 hadoop学习

hadoop学习–(从hadoop框架讨论大数据生态)一、hadoop介绍hadoop是Apache基金会开发的分布式系统基础架构。主要解决耗量数据的存储和数据分析计算。(传统工具存储不了海量数据,传统数据计算速度慢)。广义上来说。hadoop是指hadoop生态圈。二、hadoop的优势高可靠性 :hadoop底层维护多个数据副本,一般备份3分数据。所以即使hadoop某个计算元素或者存储出现故障,也不会导致数据丢失。高扩展性 :在集群间分配任务数据,可方便得扩张数以千计

2020-10-16 09:55:05 149 1

原创 python数据分析---pandas处理结构化数据(二)

python数据分析—基于pandas的Index对象的访问操作一、 pandas索引的作用:pandas的索引方便用户获取数据的子集;方便用户进行分片、分块操作。主要是对Series和DataFrame的索引操作上。访问操作主要包括索引、选取和过滤。二、pandas的index对象pandas的两个数据结构Series和DataFrame都具有索引。Series的index、DataFrame的index和columns都是pandas的Index对象。pandas的Index对象负责管理轴标签

2020-09-11 20:55:41 292

原创 python数据分析---pandas处理结构化数据(一)

python数据分析—pandas处理结构化数据一、简介:pandas是python的一个开源工具包,为Python提供了高性能,简单易用的的数据结构和数据分析工具。 pandas提供了类表格的统计操作和类SQL操作,方便数据的预处理工作,提供强大的缺失值处理功能。pandas的特色功能:索引对象:包括简单的索引和多次层索引。引擎集成组合:用于汇总和转换数据集合。日期范围生成器以及自定义日期偏移(实现自定义频率)。输入工具和输出工具:从各种格式的文件中(csv、delimited、excel

2020-09-05 18:49:16 1669

原创 python数据分析---Numpy

数据分析基础工具—Numpy1. Numpy介绍1.numpy是python处理数组和矢量运算的工具包2.numpy提供了对数组进行快速运算的标准数学函数3.提供了简单易用的面向C语言的API.2.多维数组对象ndarrayNumpy中一个重要的基础工具就是n维数组对象ndarray,该对像保存同一类型的数据,访问方式类似于list,通过整数下标进行索引。2.1ndarray对象的属性shape属性 :返回一个元组,用于表示ndarray各个维度的持长度,元组的长度为数组的维度(与ndim相

2020-08-29 19:05:11 213

基于MIMO的信号检测算法仿真程序

这个压缩包里是关于MATLAB信号仿真算法的仿真代码,对在MATLAB中做信号检测的同志有一定的帮助,里面还有一部分运行完成的结果图

2019-04-24

空空如也

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

TA关注的人

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