- 博客(35)
- 收藏
- 关注
原创 HashMap 扰动函数、负载因子、扩容链表拆分
很显然不太行,那就需要数组的大小做与运算,hashmap的初始数组大小是1 << 4 ,也就是16,那计算数组的下标同过与运算的方式获得,(16-1)&h。那扩容最直接的问题,就是需要把元素拆分到新的数组中。拆分元素的过程中,原jdk1.7中会需要重新计算哈希值,但是到jdk1.8中已经进行优化,不再需要重新计算,提升了拆分的性能,设计的还是非常巧妙的。假如原数组是16,现在扩容到32,那么原数组hash与增长出来的长度16做与运算,的出来的结果如果为0则下标不表,如果新位置就是原来的位置加16。
2023-05-15 09:33:41
817
原创 kafka概述
目前企业中比较常见的消息队列产品主 要有 Kafka、ActiveMQ 、RabbitMQ 、RocketMQ 等。在大数据场景主要采用 Kafka 作为消息队列。在 JavaEE 开发中主要采用 ActiveMQ、RabbitMQ、RocketMQ。
2023-04-19 15:28:22
604
原创 MySQL-面试题
这个是默认规定的,InnoDB中页的默认大小就是16KB,以页作为磁盘和内存之间交互关系的基本单位,也就是最少一次从磁盘读取到内存中最少是16KB。聚簇索引存放了完整的记录在叶子节点中,并且不需要我们通过index语句去创建,Innodb存储引擎会自动为我们创建。非聚簇索引(又称二级索引),是需要我们手动通过index去创建,并且他存储的数据不是完整的数据,只存储了你当前创建的索引字段和主键。并且在查找中如果使用到非聚簇索引,并且字段还涉及到除了当前索引字段和主键字段以外的字段,是需要涉及到回表操作。
2023-04-04 22:10:17
605
原创 Java-JVM-面试题
加载: 将字节码文件中的.class文件,通过类加载器,加载进运行时数据区的方法区内,并创建一个大的Class对象链接:(验证、准备、解析)① 验证(比如说验证字节码文件开头是CAFFBABA,版本号等)② 准备(为类变量赋予默认的初始化值, 使用static+final修饰, 且显示赋值不涉及到方法或者构造器调用的基本数据类型或者String类型的显示赋值都在准备阶段)③ 解析:将类中的符号引用变成直接引用(符号引号在字节码文件的常量池中)
2023-03-31 10:21:49
2699
原创 Elastricsearch03_核心概念、系统架构、分布式集群、路由计算、分片控制、分片原理、文档分析、文档处理
虽然 Elasticsearch 带有一些现成的分析器,然而在分析器上 Elasticsearch 真正的强大之处在于,你可以通过在一个适合你的特定数据的设置之中组合字符过滤器、分词器、词汇单元过滤器来创建自定义的分析器。在 分析与分析器 我们说过,一个 分析器 就是在一个包里面组合了三种函数的一个包装器, 三种函数按照顺序被执行:字符过滤器字符过滤器 用来 整理 一个尚未被分词的字符串。例如,如果我们的文本是 HTML 格式的,它会包含像或者这样的 HTML 标签,这些标签是我们不想索引的。
2023-03-28 14:36:00
1292
原创 MyBatis-面试题
Mybatis 是一个半 ORM(对象关系映射)框架,它内部封装了 JDBC,开发时只需要关注 SQL 语句本身,不需要花费精力去处理加载驱动、创建连接、创建statement 等繁杂的过程。程序员直接编写原生态 sql,可以严格控制 sql 执行性能,灵活度高。MyBatis 可以使用 XML 或注解来配置和映射原生信息,将 POJO 映射成数据库中的记录,避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。
2023-03-28 09:48:50
731
原创 Spring-面试题
Spring框架是一个开源的具有容器性质的轻量级框架。容器IOC(控制反转)AOP(面向切面编程)。事务传播行为(propagation behavior)指的就是当一个事务方法被另一个事务方法调用时,这个事务方法应该如何进行。例如:methodA事务方法调用methodB事务方法时,methodB是继续在调用者methodA的事务中运行呢,还是为自己开启一个新事务运行,这就是由methodB的事务传播行为决定的。传播行为?
2023-03-27 23:34:49
536
原创 Linux安装Elasticsearch 7.8.0
因为安全问题,Elasticsearch 不允许 root 用户直接运行,所以要创建新用户,在 root 用户中创建新用户。软件放到 /opt/module/elasticsearch下面,然后解压。打开浏览器输出:http://192.168.176.131:9200/使用 ES 用户启动。
2023-03-20 20:42:14
364
原创 windown下安装Elasticsearch7.8.0 版详细教程
Elasticsearch 官网:https://www.elastic.co/cn/打开浏览器(推荐使用谷歌浏览器),输入地址:http://localhost:9200。打开bin目录,下面有一个elasticsearch.bat,双击打开即可。下载好之后,解压压缩包,会得到一个文件夹。
2023-03-19 10:31:46
585
原创 Elastisearch YAMLException: java.io.CharConversionException: `Invalid UTF-8异常
根据报错信息,貌似是说他需要utf-8的信息,然后我给的好像不能解析。然后我用的是editplus进行编写的,然后查一下的默认编码是什么?他默认保存的是ANSI编码,所以是保存编码的时候出现问题了。
2023-03-19 00:56:34
773
原创 Elasticsearch02_安装、基本操作、java Api操作
这里请求路径中的_cat 表示查看的意思,indices 表示索引,所以整体含义就是查看当前 ES服务器中的所有索引,就好像 MySQL 中的 show tables 的感觉,服务器响应结果如下。在 Postman 中,向 ES 服务器发 GET 请求 :http://127.0.0.1:9200/student/_search。在 Postman 中,向 ES 服务器发 GET 请求 :http://127.0.0.1:9200/student/_search。这里可以体会一下 RESTful 的意义,
2023-03-18 22:23:04
316
原创 Zookeeper03_选举机制 客户端命令行操作 API使用
1 Zookeeper选举机制2 客户端命令行操作2.1 命令行语法2.2 znode节点数据信息2.3 节点类型(持久/短暂/有序号/无序号)2.4 监听器原理2.5 节点删除与查看3 客户端API操作3.1 Java引入Zookeeper API3.2 客户端向服务端写数据流程
2023-03-16 22:49:22
363
原创 Zookeeper_02 下载 本地安装 集群
1 Zookeeper 下载2 Linux安装JDK3 Zookeeper Linux本地安装3.1 本地模式安装安装前准备配置修改操作 Zookeeper3.2 配置参数解读4 Zookeeper 集群
2023-03-15 22:58:00
336
原创 Redis面试题(2023最新版)
redis 面试总结 redis 持久化 分布式锁 淘汰策略 Redis 五大基本类型 Redis 事务 主从复制 LRU算法
2023-03-07 10:27:02
2281
原创 class lombok.javac.apt.LombokProcessor (in unnamed module @0x6b1321b7) cannot access class com.sun.t
class lombok.javac.apt.LombokProcessor (in unnamed module @0x6b1321b7) cannot access class com.sun.tools.javac.processing.JavacProcessingEnvironment
2023-02-14 14:48:26
994
1
原创 Springboot02_自动配置原理
文章目录①. 容器功能1. 组件添加- **`①. @Configuration`**- **`②. @Bean、@Component、@Controller、@Service、@Repository`**- **`③. @Conditional`**2. 原生配置文件引入- **`①. @ImportResource`**3. 配置绑定- **`①. @Component+@ConfigurationProperties`**- **`②. @EnableConfigurationProperties +
2022-01-30 15:04:57
554
原创 Springboot01_概述、maven配置、Hello World、Springboot特点、开发小技巧
①. Springboot 简介②. Springboot 主要特性③. maven配置④. Hello World⑤. Springboot 特点⑥. 开发小技巧Lombokdev-tools
2022-01-27 16:18:07
363
原创 idea_快捷键、插件、live_tempalate、常用设置
文章目录①. idea快捷键CtrlAltShiftCtrl + AltCtrl + ShiftAlt + Shift其他②. idea插件CodotaRestfulToolkitGsonFormatPlusMaven HelperKey Promoter XStatisticRainbow bracketsGenerateAllSettertranslationAlibaba java codingjclasslib Bytecode viewer③. live templates④. 常用设置Appea
2022-01-25 21:20:17
1587
原创 Open JDK 和 Oracle JDK的关系
文章目录Open JDK来源Open JDK 和 Oracle JDK的关系Open JDK 官网介绍Open JDK来源Java 由 Sun 公司发明,Open JDK是Sun在2006年末把Java开源而形成的项目。也就是说Open JDK是Java SE平台版的开源和免费实现,它由 SUN 和 Java 社区提供支持,2009年 Oracle 收购了 Sun 公司,自此 Java 的维护方之一的SUN 也变成了 Oracle。Open JDK 和 Oracle JDK的关系大多数 JDK
2020-11-08 12:52:53
1288
原创 Springboot2.3学习整合
1 Spring Boot 基础篇1.1 Spring Boot 简介1.1.1 springboot的学习铺垫和要求 1.1.2 、SpringBoot主要特性 1.1.3 springboot缺点1.2 环境准备1.2.1 MAVEN设置 1.2.2 IDEA设置1.3 Spring Boot HelloWorld1.3.1 创建一个maven父工程tx_sboot(pom) 1.3.2 在父工程下创建springboot-first(jar) 1.3.3 创建测试Controll
2020-11-08 12:19:31
1517
3
原创 springmvc5学习详细笔记整合
第1章 SpringMVC 概述1.1 SpringMVC 简介 21.2 SpringMVC 优点 21.3 第一个注解的 SpringMVC 程序 21.3.1 新建 maven web 项目 31.3.3 注册中央调度器 41.3.4 创建 SpringMVC 配置文件 61.3.5 创建处理器 61.3.6 声明组件扫描器 71.3.7 定义目标页面 71.3.8 修改视图解析器的注册 81.3.9 修改处理器 91.3.10 使用 SpringMVC 框架 web 请求处理
2020-11-07 23:15:07
1567
原创 maven详细配置教程
文章目录1.maven下载2.maven配置2.1maven环境变量配置2.2maven配置文件2.2.1本地仓库位置修改2.2.2修改maven默认的JDK版本2.2.3添加国内镜像源3.IDEA配置maven4.Eclipse配置maven1.maven下载maven下载官网:点击点击进去官网,点击Download往下拉找到这个点击下载,下载好后,找一个你想放的地方解压就行了。然后解压后的目录是这样子的。2.
2020-11-03 22:14:06
101576
13
原创 tomcat启动时启动窗口出现乱码的解决方案(图文教程)
分析原因:出现乱码可能是字节流解码为字符串时,使用了错误的字符集(和编码所用字符集不一致)。一共有两种解决办法一种是修改tomcat日志文件编码格式。-第二种就是修改cmd编码格式,cmd默认的是GBK。1、第一种方案找到你下载的tomcat的路径conf目录下的logging.properties修改文件编码格式为GBK,因为cmd窗口默认的编码格式是GBK。查看命令行窗口编码个式打开命令行窗口右键打开属性,然后在选项下面的当前代码页。修改tomcat日志编码格式,打...
2020-11-03 19:59:53
4051
原创 高效搜索引擎使用小技巧
这里只是一些简单的搜索小技巧,方便平时查找资料。1. 准确搜索:给关键词加上英文双引号 eg: “大数据算法”2. 排除关键词:在搜索内容后面加上空格减号需要排除的关键词 eg: 苹果 -iPhone -iPad3. 用OR逻辑搜索:用大写的OR和空格隔开关键词 eg: 百度OR 谷歌4. 模糊搜索:用*代替文字或单词 eg: study * homefiletype:在关键词后加上filetype:文件类型 eg: 高等数学 filetype:pdfsite:在关键词后加上site.
2020-11-02 16:28:21
941
原创 git详细笔记教程
文章目录目录一、git版本控制二、git安装和配置1、git下载和安装2、git图标介绍3、git在linux常用命令4、git配置三、git基本理论四、git项目搭建五、在gitee上设置ssh公钥六、IDEA中集成Git目录一、git版本控制git使用的是分布式版本控制。就是所有版本信息仓库全部同步到本地的每个用户,这样就可以在本地查看所有版本历史,可以离线在本地提交,只需在连网时push到相应的服务器或其他用户那里。由于每个用户那里保存的都是所有的版本数据,只要有一个用户的设备没有问题就可以恢
2020-10-29 16:25:56
578
1
原创 spring5高效学习笔记
文章由b站动力节点spring视频课程整理而成,可作为笔记参考。文章目录目录第1章 Spring概述1.1 Spring框架是什么1.2 Spring优点?1.3 Spring体系结构第2章 IoC控制反转2.1 开发工具准备2.2 Spring的第一个程序2.2.1 创建maven项目2.2.2 引入 maven 依赖 pom.xml2.2.3 引入 maven 依赖 pom.xml2.2.4创建 Spring 配置文件2.2.5定义测试类2.2.6使用 spring 创建非自定义类对象2.3 基于X.
2020-10-29 00:49:01
364
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人