自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 java 抽象

这段代码就表示创建了一个名为“拿铁”的咖啡实例,价格为20元,同时调用了父类“饮料”的make()方法,也就是制作咖啡的具体方法。在生活中,我们也可以说,“我要一杯拿铁,加点糖和奶”,这就体现了抽象类“饮料”和具体实现类“咖啡”的作用。在Java中,我们同样可以将“饮料”定义为一个抽象类,它可以包含许多共同的属性和方法,比如名称、价格、制作方法等等。举个例子,我们可以定义一个“咖啡”类,它继承“饮料”抽象类,并实现自己特有的方法“加糖加奶”。在生活中,我们可以将“饮料”作为一个抽象的概念。

2023-04-06 17:21:48 184

原创 java 泛型

通过上面的介绍,我们可以知道,在 Java 中使用泛型可以有效提高代码的安全性和可维护性,帮助我们快速针对不同类型的数据进行处理,灵活应对实际业务需要,这也是为什么在 Java 开发中,泛型被广泛应用的原因之一。在 Java 中,泛型就像是不同型号的手机,在泛型中我们可以定义数据类型(型号),并且可以根据不同的需求选择不同的泛型,例如:ArrayList 就是 Java 中使用最为频繁的泛型之一,T 代表着泛型参数类型,在实际开发中我们可以根据不同的类型传入不同的泛型参数,使得代码更加灵活。

2023-04-06 17:12:06 158

原创 java 双亲委派机制

于是,你先问问你的邻居,你的邻居不知道,于是他向他的父母询问,他的父母也不知道,他们又向他们的父母询问,直到找到一个知道商店地址的人。我们可以在自定义类加载器中通过重写加载方法,来实现不同的加载方式,而Java的双亲委派机制则保证了自定义的类加载器不会影响到系统的加载过程,从而保证了Java平台的安全、稳定和可靠性。在加载阶段,类加载器首先检查该类是否已经被加载,如果没有被加载,则通过双亲委派机制,按照父子关系层层向上委托,直到找到与该类对应的类加载器,由它负责加载。// 得到系统类加载器。

2023-04-06 17:05:43 325

原创 JVM 栈中的“压栈”和“弹栈”操作

类似地,如果我们将相同类型的元素不断“压栈”,而没有“弹栈”,就会导致类型转换错误,产生ClassCastException异常。最后,当结账完成后,购物车中的商品被全部取完,此时购物车的栈帧也被清空,即已经没有任何商品可以“弹栈”出来了。JVM(Java虚拟机)中的“压栈”和“弹栈”操作,其实是操作栈帧中的操作数栈(Operand Stack),作用是在方法调用过程中,用于存储方法使用的数据和中间计算的结果。再来看看“压栈”操作。在这个过程中,小明又需要重新“压栈”,把新买的商品放入购物车中。

2023-04-06 16:43:52 434

原创 jvm 堆栈 空间

而栈空间则类似于每个顾客手中的托盘,方便他们存放已选择的菜品、餐具等物品,保证每个人的物品不会混淆。在这个场景中,我们可以发现,每个人手中的托盘(栈空间)容量是固定的,一旦超出了托盘的容量,便需要重新排队。而堆空间则是整个餐厅的库存,可以不断地添加或减少,根据顾客的需求动态地调整。可以说,JVM堆栈空间也是类似于这样一个过程,通过固定的栈空间存放数据,通过不断变化的堆空间满足程序的需求。堆空间是用来存储运行时数据的一片内存区域,其容量是VM堆的一部分,可以动态地增长或缩小。

2023-04-06 16:39:23 84

原创 了解java清洁工 GC

类比到JVM和GC的角色上,Java程序在执行的过程中,也会产生大量的内存垃圾。比如,我们在日常生活中产生了很多垃圾,这些垃圾需要被清理掉,否则就会对我们的生活造成很大的威胁。在这个过程中,我们需要有一个垃圾回收系统,将这些垃圾分类清理,加以处理和再利用,以保持我们的环境清洁和绿色。总之,JVM和GC是Java程序的基础组件,用于管理内存分配和垃圾回收,是保证Java程序运行效率和稳定性的重要保障。正如我们生活中需要一套完善的垃圾回收系统一样,程序中也需要一个高效的垃圾回收机制来保证程序的可靠性和性能。

2023-04-06 16:30:53 67

原创 ElasticsearchRestTemplate 基本使用

ElasticsearchRestTemplate 如何实现排序、模糊查询、条件查询、区间查询、距离排序、多条件查询等功能。

2023-04-06 16:23:05 3458

原创 springboot 整合 Elasticsearch 7.6.0

一旦应用程序启动,我们应该能够在Elasticsearch中看到我们的Product索引,并且我们应该能够使用我们的ProductRepository接口执行不同类型的查询。接下来,我们需要创建一个存储库接口,该接口将继承自ElasticsearchRepository,并允许我们执行与我们的Product实体相关的操作。在这里,我们自动连接到我们的ProductRepository实例,并使用其save()方法将新的Product实例保存到Elasticsearch中。

2023-04-06 16:16:13 385

原创 lombok的@AllArgsConstructor 和 @Value 冲突

required a bean of type 'java.lang.String' that could not be found.

2023-04-06 16:03:20 974

原创 MyBatis if 失效问题

在判断条件为字符串类型的情况下,我们经常使用"!我们知道,在Java中,比较两个整型数据的时候是使用"=="和"!在SQL语句中,比较两个整型数据时使用的是"="和"",而非"=="和"!在使用MyBatis进行数据查询和操作时,如果判断条件为整型,在条件语句中使用"!我们可以将整型数据转化为字符串类型,或者使用""包裹条件语句来避免这个问题的出现。在判断条件为整型的情况下,我们可以将整型数据转化为字符串类型,再使用"![CDATA[ ]]>"包裹整型条件可以避免"!

2023-04-04 17:26:55 1019

原创 java 如何打印对象内容

打印对象的时候需要重写toString方法,才能打印出对象内容

2023-02-14 14:04:24 1219

原创 java 打印菱形(for循环打印)

for循环打印

2023-02-14 09:33:47 222

原创 java 打印菱形(递归打印)

java 打印菱形(递归打印)

2023-02-13 17:01:18 182

原创 jdk1.8 stream使用场景

map、filter、limit、skip、distinct、sorted常见用法

2023-02-11 17:23:31 100

原创 java 获取接口请求ip地址

java获取接口请求访问的ip地址

2022-09-16 17:11:29 441

原创 @Async 入门使用

Async异步方法默认使用Spring创建ThreadPoolTaskExecutor。最大线程数:Integet.MAX_VALUE。队列使用LinkedBlockingQueue。容量是:Integet.MAX_VALUE。启用异步支持 @EnableAsync。线程池拒绝策略:AbortPolicy。空闲线程保留时间:60s。

2022-09-15 15:26:45 161

原创 swagger 响应参数中文提示

swagger 中文提示

2022-09-13 16:46:37 875

原创 Spring Aop(简单实现)

spring aop环绕通知简单实现步骤1、创建一个代理类,加上@Aspect注解2、定义一种通知

2022-06-13 11:25:10 97

原创 数据库三大范式(图解)

三大范式:1、不可分割原子性2、每列数据与主键直接相关3、一张表只做一件事

2022-06-11 18:32:01 382

原创 数据库的事物(简答)

原子性:执行数据的原子性一致性:执行结果的一致性隔离性:事物之间的隔离性持久性:执行成功的持久性

2022-06-11 17:18:07 87

原创 java面试常问集合(简答)

map集合 hashmap和ConcurrentHashMap, ConcurrentHashMap是线程安全的map集合,里面使用了锁,hashmap在1.7和1.8之后存储接口有所不同,1.7的是数组加链表采用的是头插法,会导致死循环,1.8的hashmap改为尾插法,存储数据结构也有所调整,当数据达到一定数量的时候,会转成红黑树结构进行存储,.........

2022-06-07 18:33:46 142

原创 去除pom文件的全局依赖

父级导入r2dbc依赖,但是我其他模块并不需要去使用这个依赖,因为一旦导入就需要配置连接因为是父级,exclusions是不起作用的···java<exclusions> <exclusion> <groupId>dev.miku</groupId> <artifactId>r2dbc-mysql</artifactId> </exclusion></ex

2022-04-18 15:55:40 1145

原创 rabbitmq延迟队列的实现

第一步:下载延迟队列插件去https://github.com/rabbitmq/rabbitmq-delayed-message-exchange/tree/v3.9.x中下载对应版本的插件第二步:安装执行 rabbitmq-plugins enable rabbitmq_delayed_message_exchange 命令,rabbitmq需重启第三步:pom文件导入<dependency> <groupId>com.rabbitmq&lt

2022-03-24 10:44:33 2793

空空如也

空空如也

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

TA关注的人

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