自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 算法题中nextInt(),nextLine()的易错陷阱

这种方法输入5以后回车,这一次回车占用了一次nextLine()的回车,所以后续仅输入四次2就结束了。数组的第一个元素为空,因为第一次回车的前面和5的后面之间什么也没有。这种方法输入5以后空格,这个空格和回车一样能表示nextInt()的读取已经结束,所以后续的内容都属于第一次nextLine()。可以看到数组正常装入了五个元素。我们的意图是第一次输入确定数组长度为5,第二次输入依次把5行数据装进数组。nextLine()读取回车前的一行,空格不会中断读取。nextInt()读取空格或回车前的整数。

2024-04-08 16:36:22 220 1

原创 前后端传参格式

Serialize()方法是指将一个抽象的JavaScript对象(数据结构)转换成字符串。这个字符串可以利用标准格式发送到服务器,被视为URL查询字符串或者POST数据,或者由于复杂的AJAX请求。这个方法使用的数据结构可以是JavaScript数组或者对象dblclick() 前端监听双击事件。

2023-12-14 15:06:17 670

原创 Arrary.asList(arr)

List list=Arrary.asList(arr):把一个数组转换成 list ,本质还是数组,就是用 list 给 arr 包了一层。更改数组 s ,列表 list 的值会变化,同样的,改变 list ,s 也会变化。不能用 add,remove 这些 list 的方法。基本类型的情况下调用 size() 不准确。

2023-12-14 15:02:46 128

原创 Java判空方法

java的几种判空方法

2023-12-14 15:00:06 128

原创 批处理、流处理和批流一体

在传统的大数据处理中,批处理和流式处理是两个独立的处理方式,需要使用不同的计算框架进行处理。批流一体模型通常使用基于流式处理的模型,在处理批量数据时,将其转换为一条条的流数据进行处理。也支持批处理,但使用的是基于流处理的批处理模式,即将一批数据分成多个数据流进行处理,可以实现更高效的内存管理和更低的延迟。这种模型可以同时处理批处理和流式处理的数据,并使得批处理和流式处理可以在同一个计算框架中进行统一管理和调度。使用的是批处理模型,即将一批数据一次性读入内存,然后对其进行处理,处理完成后再将结果写入磁盘。

2023-12-14 14:53:32 217

原创 Doris学习笔记

支持大数据量的分布式数据管理:MPP数据库支持事务对分析型查询友好高吞吐数据模型定义了Doris副本在单个版本中的组织形式和多个版本在compaction和查询时的聚合方式。数据主要包含维度(Key)和指标(Value)两种列,Key在前,Value在后。单个版本中,数据按Key排序放置,前36字节会构建前缀索引,查询条件落在前缀时,可极大加快查询速度。

2023-12-14 14:50:27 459

原创 数据仓库相关概念

离线数仓和实时数仓的分层模型基本上是相同的,都会遵循一定的数据仓库架构,如ETL(Extract-Transform-Load)过程,以及数据的清洗、转换和加载等步骤。不过在实时数仓中,由于其实时性的需求,可能会采用一些特殊的技术和工具,如流处理技术(例如Spark Streaming、Flink等),来实现数据的实时抽取、清洗、转换和加载。实时数仓:实时数仓处理的是实时或者近实时的数据,数据更新的频率非常高,可能是每秒甚至每毫秒更新一次。数据仓库的指标主要是用来衡量和评估数据仓库的性能、效率和效果的。

2023-12-14 14:44:41 689

原创 数据处理架构

在此架构中经常我们看到次日统计的结果比昨晚的结果要少,原因就在于次日统计结果和昨日统计结果走了两条线的计算方式:次日统计结果是按照批处理得到了更为准确的批量处理结果。这是 Lambda 架构最大的问题,针对同一个需求需要开发两套代码,一个在批处理引擎上实现,一个在流处理引擎上实现,在写好代码后还需构造数据测试保证两者结果一致,另外,两套代码对于后期维护也非常麻烦,一旦需求变更,两套代码都需要修改,并且两套代码也需同时上线。Kappa架构的主要优点是架构简单,只需要维护一种处理机制,降低了系统的复杂性。

2023-12-14 14:42:38 478 1

原创 SaaS和PaaS

SaaS和PaaS。SaaS(Software as a Service)是一种软件交付模式,也被称为“按需软件”。在这种模式下,软件和相关的数据都被托管在云端,用户通过互联网和一个浏览器就可以使用这些软件,而无需自己去安装和维护。SaaS的主要特点包括:订阅制:用户按照使用情况付费,不需要一次性购买软件许可证。无需安装:所有的软件和数据都托管在云端,用户无需自己安装和维护。可以随时随地访问:只要有互联网连接,用户就可以随时随地访问SaaS应用

2023-12-14 14:41:24 121

原创 几种表的概念

事实表、维度表、宽表、窄表。事实表是用来存储度量数据的表,即事务性数据,例如订单数量、销售额、运输成本等。事实表通常具有一个日期时间维度,以便将度量数据与时间相关联。事实表的每一行通常表示一个事实事件,例如某一天的销售额、某个客户的订单数量等。事实表通常具有多个外键,用于关联维度表。

2023-12-14 14:38:58 42

原创 MapReduce\Shuffle

是一种编程模型,用于处理和生成大数据集。这个模型由两个主要步骤组成:Map步骤和Reduce步骤。Map步骤:在这个步骤中,输入数据集被分割成多个独立的数据块,然后每个数据块被分配给一个Map任务进行处理。Map任务的作用是处理输入数据,并将结果以键值对(key-value pair)的形式输出。Reduce步骤:在这个步骤中,所有Map任务的输出被收集并按照键进行排序和分组,然后将相同键的数据发送到同一个Reduce任务进行处理。Reduce任务的作用是将所有相同键的值进行合并,生成最终的输出结果。

2023-12-14 14:37:20 211

原创 git merge和git rebase

git merge和git rebase的区别。git merge是Git中的一个命令,用于将两个或两个以上的开发历史(commit)合并到一起。当你在一个分支上完成了新的开发,想要将这些改动合并到主分支(或其他任何分支)上时,就需要用到这个命令。,其中[branch]是你想要合并进来的分支的名字。

2023-12-04 14:57:53 171

原创 编译执行和解释执行

编译执行和解释执行的区别、各自的优缺点

2023-11-15 11:29:09 71

原创 StringSubstitutor

所有被字符串包含的、属于map中所具有的key的变量,都可以通过StringSubstitutor对象的replace()方法实现替换。需要替换掉的值作为key,真正填入的值作为value,两者以key-value的形式存入map。新建一个StringSubstitutor对象,包含设定好的map。在字符串当中,需要被替换的变量用 ${key} 占位。

2023-10-19 17:12:09 266 1

原创 MAC如何在根目录创建文件

在Mac文件的根目录下通过软连接创建文件。什么是根目录。打开终端,输入cd /,然后输入 ls 查看根目录下有哪些文件可以看到 usr、etc、opt 这些文件的地方才叫根目录,而不是以用户命名,可以看到音乐、应用程序、影片、桌面的地方哈介绍一种叫做的方法。假设我们要在根目录创建data/webapps/file文件,正常的创建方式都是会报read- only的

2023-10-19 15:07:40 3045 1

原创 获取URL中的参数

获得符合正则表达式的URL后,取出第二个位置的字符串(r[2])进行编码。这个正则表达式就是一个URL路径格式,name是我们要找的参数。window.location.search查找页面中的URL。substr(1),从1开始截取到末尾(索引从0开始)match(reg)和定义好的正则表达式对比。unescape函数:编码。

2023-10-18 17:59:02 112

原创 关于守护线程

用户线程和守护线程的区别,哪些线程属于守护线程

2023-09-25 00:22:15 78

原创 SQL中IN和EXSIST的区别

SQL中IN和EXSIST的区别和使用场景。要选择使用 IN 还是 EXISTS,取决于查询的需求和性能。通常来说,EXISTS 运算符在处理大量数据时效率更高,因为它可以提前停止搜索一旦找到匹配的结果。MySQL 中的 in 语句是把外表和内表作 hash 连接,而 exists 语句是对外表作 loop 循环,每次 loop 循环再对内表进行查询。

2023-09-11 16:52:23 1519

原创 关于DNS的一些认识

DNS是域名系统(Domain Name System)的缩写,它是互联网中用于将域名转换为IP地址的一种系统。在互联网上,每个设备都被分配一个唯一的IP地址,通过这个IP地址才能与其他设备进行通信。然而,IP地址由一串数字组成,不易记忆。为了方便用户记忆和使用,引入了域名的概念,比如www.example.com。DNS就是将这些域名转换为对应的IP地址的系统。当用户输入一个域名时,操作系统会通过DNS解析将域名转换为对应的IP地址,然后才能与目标设备进行通信。

2023-09-10 16:01:09 464 1

原创 IPV4和IPV6的区别

IPv4是Internet Protocol Version 4的缩写,是目前广泛使用的互联网协议版本。它使用32位地址来标识网络上的设备,每个地址由4个8位组成,以的形式表示。IPv4地址空间有限,只有约42亿个地址可用,而且很多地址已经被分配完毕。

2023-09-10 15:53:13 168

原创 SQL中CASE的用法

其中,expression是要比较的值或表达式,value1、value2等是与expression进行比较的可能值,result1、result2等是与对应value匹配时返回的结果,ELSE部分是当expression与所有value都不匹配时返回的结果。其中,condition1、condition2等是要判断的条件,result1、result2等是与对应condition匹配时返回的结果,ELSE部分是当所有condition都不匹配时返回的结果。这样就可以根据不同的条件返回不同的结果。

2023-09-10 15:46:09 2541

原创 如何区分排序算法的稳定性

简单来说,如果一个排序算法能够保证相等元素的顺序不发生改变,那么它就是稳定的。插入排序是稳定的,因为插入时只有当前元素比前面的元素小才会插入,并且插入位置是有序区的最后一个位置。归并排序是稳定的,因为在合并两个有序子数组时,相等元素会先放入左侧子数组,保持相对顺序不变。冒泡排序是稳定的,因为在比较相邻元素并交换时,只有当前元素比相邻元素大才会交换。快速排序不是稳定的,因为在分区过程中,相等元素可能会被交换到不同的位置。堆排序不是稳定的,因为堆化过程中会交换不相邻的元素。堆排序和快速排序是不稳定的排序算法,

2023-09-09 22:32:02 1623

原创 Mapper传递参数的方法

【代码】Mapper传递参数的方法。一共四种方法,顺序、param注解、传map、传实体类实例

2023-09-09 16:33:35 795

原创 把文件上传到Gitee的详细步骤

详细的gitee使用步骤,一看就会,包教包会!在rebase的过程中,有时也会有冲突,这时Git会停止rebase并让用户去解决冲突,解决完冲突后,用git add命令去更新这些内容,然后不用执行git-commit,直接执行git rebase --continue,这样git会继续apply余下的补丁。commit命令里的 -m 选项是为了在命令行中提供提交注释,就是可以给这次提交取个名字或者编个版本号来区分这次提交,不然以后提交得多了,没有注释就看不出来是哪次提交了。

2023-09-07 00:07:27 1358

原创 并行和并发的区别

如图,并行可以多个线程同时执行,并发只是CPU在多个线程之间来回切换。从操作系统的角度来看,线程是CPU分配的最小单位。

2023-09-06 18:07:38 173

原创 Git常用命令

Git常用命令总结

2023-09-05 17:48:13 746

原创 Linux常用命令

linux常用命令

2023-09-05 16:30:48 188

原创 Connection和Connections的区别

是集合的工具类,提供了一系列静态方法实现对各种集合的搜索、排序、线程安全化等操作。是集合类的上级接口,继承他的接口为主要为Set、List。

2023-09-04 10:03:17 265

原创 内存分配与回收策略、对象什么时候进入老年代

新生代垃圾收集的时候,把一个Eden区和一个survivor区的存活对象复制到第二个survivor区。如果第二个survivor区装不下,就需要向别的空间申请内存担保,一般就是向老年代申请,然后进入老年代。年龄相同的对象大小超过内存的一半,年龄大于这个年龄的直接进入老年代。把对象按年龄从小到大排序,超过空间一半的年龄,把对象放入老年代。长期存活的对象将进入老年代。大对象直接进入老年代。

2023-09-01 10:39:50 92

原创 垃圾回收 finalize()方法

如果对象在在 finalize()中成功拯救自己——只要重新与引用链上的任何一个对象建立关联即可,譬如把自己 (this 关键字)赋值给某个类变量或者对象的成员变量,那在第二次筛选时它就”逃过一劫“;如果对象在进行可达性分析后发现没有与 GC Roots 相连接的引用链,那它将会被第一次标记,随后进行一次筛选,筛选的条件是此对象是否有必要执行 finalize()方法。finalize()方法只能救一次,第二次不生效。垃圾回收就是秋后问斩,finalize()就是刀下留人。

2023-09-01 10:30:37 96

原创 JVM 对象引用类型

与强引用的区别是,软引用在垃圾回收时,虚拟机会根据当前系统的剩余内存来决定是否对软引用进行回收。强引用环境下,垃圾回收时需要严格判断当前对象是否被强引用,如果被强引用,则不会被垃圾回收,当内存空间不足的时候,java虚拟机宁可抛出OOM异常,也不会回收具有强引用的对象来释放内存。加载该类的类加载器已经被回收,这个条件除非是经过精心设计的可替换类加载器的场景,如 OSGi、JSP的重加载等,否则通常是很难达成的。如果一个对象仅持有虚引用,那么它就和没有任何引用一样,在任何时候都可能被垃圾回收。

2023-09-01 10:28:17 779

原创 内存溢出和内存泄漏是什么意思?

申请的内存空间没有被正确释放,导致内存被白白占用。:申请的内存超过了可用内存,内存不够了。两者关系:内存泄露可能会导致内存溢出。

2023-09-01 10:20:22 46

原创 内存泄漏的原因

内存溢出和内存泄漏是什么意思?内存泄露:申请的内存空间没有被正确释放,导致内存被白白占用。内存溢出:申请的内存超过了可用内存,内存不够了,OOM。两者关系:内存泄露可能会导致内存溢出。

2023-09-01 10:18:25 70

原创 JVM 对象的访问方式

Java堆中将可能会划分出一块内存来作为句柄池,reference中存储的就是对象的句柄地址,而句柄中包含了对象实例数据与类型数据各自具体的地址信息。reference中存储的直接就是对象地址,如果只是访问对象本身的话,就不需要多一次间接访问的开销(跳过访问句柄),,在对象被移动(垃圾收集时移动对象是非常普遍的行为)时只会改变句柄中的实例数据指针,而 reference 本身不需要被修改。使用句柄来访问的最大好处就是 reference 中存储的是。使用直接指针来访问最大的好处就是。

2023-09-01 10:13:23 526

原创 JVM 对象的内存布局

JVM 对象的内存布局。对象头、实例数据、对齐填充

2023-09-01 10:05:20 966

原创 IDEA maven上传速度很慢、解决办法

maven上传的速度很慢,排除网络原因,需要检查配置。

2023-08-30 17:45:51 860

原创 To https://gitee.com/pre-li/first-project.git ! [rejected] master -> master (fetch first)er

要么删掉仓库里的readme文件或者在更新内容里面创建新的readme文件,解决两边的冲突问题。我这边是仓库初始化了,有readme文件。但是更新的文件里面没有readme。命令以覆盖的方式进行更新,这样会带来版本覆盖的问题;更新的文件和原来的文件不一样、有冲突。

2023-08-30 17:20:41 63

原创 error: ‘FirstProject/‘ does not have a commit checked outfatal: adding files failed报错

在文件的子目录中还存在.git的隐藏文件,所以报错。删除子目录.git即可。git add 文件。

2023-08-30 17:08:23 123

原创 装箱、拆箱

Java 可以自动对基本数据类型和它们的包装类进行装箱和拆箱。

2023-08-30 15:23:27 73

原创 ==和 equals 的区别?

==和 equals 的区别.自定情况:类覆盖了 equals() ⽅法。我们平时覆盖的 equals()方法一般是比较两个对象的内容是否相同,自定义了一个相等的标准,也就是两个对象的值是否相等。默认情况:类没有覆盖 equals() ⽅法。则通过 equals() 比较该类的两个对象时,等价于通过“它的作⽤是判断两个对象的地址是不是相等。即,判断两个对象是不是同⼀个对象(基本数据类型。它的作⽤也是判断两个对象是否相等。”比较这两个对象,还是相当于比较内存地址。比较的是值,引⽤数据类型。比较的是内存地址)。

2023-08-30 15:14:18 75

空空如也

空空如也

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

TA关注的人

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