
面试
文章平均质量分 81
Excellent的崽子
一步一步向着优秀的自己努力前进
展开
-
BeanFactoryAware 在公司中的实际应用
通过使用 BeanFactoryAware,我们可以创建更加灵活的Bean,它们可以在运行时动态地选择和使用其他Bean。这对于需要根据条件动态调整行为的应用来说非常有用,同时也有助于保持代码的整洁和模块化,并且它可以完美的充当策略模式的环境类。原创 2024-08-14 14:57:37 · 645 阅读 · 0 评论 -
switch语句抛空指针异常问题?
语句是 Java 中用于多路分支的选择结构之一。它允许程序根据不同的条件执行不同的代码块。在 Java 8 之前和之后,是 Java 中一种有用的控制结构,用于实现多路分支的选择。类型之外的其他对象类型,只要这些对象类型实现了。值的情况,以及在 Java 8 之后对实现了。Java 8 引入了新的特性,使得。语句有一些重要的区别。在 Java 8 之前,原创 2024-08-14 11:06:17 · 606 阅读 · 0 评论 -
ApplicationEventPublisherAware 的实际应用
ApplicationEventPublisherAware、ApplicationEvent、ApplicationListener,这三个Spring的接口可以帮我们在项目中解决很多棘手的问题,它的主要优点:解耦、异步、可扩展性强、代码简单。原创 2024-08-14 10:27:03 · 605 阅读 · 0 评论 -
ApplicationContextAware在项目中的实际应用
是一个强大的工具,它可以让你在非 Spring 管理的类中访问 Spring 容器。通过实现这个接口,你可以轻松地获取的引用,并使用它来访问 Bean 实例或配置信息。这种机制提高了代码的灵活性和可扩展性,同时也使得非 Spring 管理的类能够更好地集成到 Spring 应用程序中。原创 2024-08-12 17:11:59 · 505 阅读 · 0 评论 -
Spring 懒加载的实际应用
懒加载机制是一种有用的优化手段,它可以帮助提高应用程序的性能和响应能力,还可以解决循环依赖等问题。原创 2024-08-12 16:55:44 · 1412 阅读 · 0 评论 -
一篇文章,让你再也不会为了Spring Boot读取配置的问题烦恼!
Spring Boot读取配置文件的多种方法的具体使用和常见问题解决方案,包含Environment、@Value、@ConfigurationProperties、@EnableConfigurationProperties、@PropertySources等。原创 2024-07-09 16:52:05 · 1167 阅读 · 0 评论 -
2024最新版Redis常见面试题包含详细讲解
先来看下面这张图:布隆过滤器的底层是一个bitmap,也就是一个数组,每个下标只存储0或1,默认初始化时全部都为0。可以在其中定义多个不同的哈希函数对要存储的数据进行计算,不同的哈希函数计算出的结果作为数组的下标将其对应的值改为1。这样不管是存数据还是查询数据都可以通过哈希计算得到对应下标然后根据是否为1判断是否存在,如果有一个值不为1则就是不存在。但是,这种机制也是会出现一定的误判率的,具体看下面这张图:原创 2024-06-28 11:25:32 · 1991 阅读 · 0 评论 -
网络世界的“握手”与“告别”:揭秘TCP的三次握手与四次挥手
在网络世界中,数据的传输就像是一场精心编排的舞蹈,而TCP(Transmission Control Protocol,传输控制协议)则是这场舞蹈的指挥家。那么,在这背后,TCP是如何通过“三次握手”和“四次挥手”来确保数据的稳定传输和优雅告别的呢?上面这个流程就不用画图表示了,其实TCP的三次握手和四次挥手很好理解,这些动作最终都是为了保证数据在传输过程中的安全性,它们通过精确的序列号和确认机制,确保了数据在传输过程中的稳定性和安全性。三次握手懂了,但是四次挥手还是没懂?这就是TCP四次挥手的作用。原创 2024-06-28 11:14:00 · 417 阅读 · 0 评论 -
这样解释 TCP_IP 真的很好理解
所以,TCP/IP就像是你在这个城市(计算机网络)中送包裹(数据)所依赖的交通规则和交通工具。IP负责规划路线,TCP负责安全、可靠地送达包裹。现在,你想从你家(你的计算机)送一个包裹(数据)到你朋友家(另一台计算机)。但城市很大,你无法直接把包裹送到你朋友家,你需要借助一些交通工具和规则来确保包裹能够安全、准确地送达。想象一下,你住在一个大城市里,这个城市就是你的计算机网络世界。在这个城市中,有许多房子(代表不同的计算机),这些房子之间由各种道路和交通设施连接起来(代表网络的物理连接)。原创 2024-06-28 11:00:36 · 269 阅读 · 0 评论 -
换种方式讲Http/Https的区别真的很容易懂
HTTP 和 HTTPS 就像网络上的两条道路,虽然它们的目的地相同,但行驶的方式和安全性却截然不同。HTTP 就像一条开放的公路,虽然方便但存在安全隐患;而 HTTPS 则像是一条封闭的隧道,虽然需要一些额外的步骤和成本,但却能为我们提供更高的安全保障。因此,在进行网络传输时,我们应该尽量选择 HTTPS 这条“暗道”,以确保我们的数据安全无虞。原创 2024-06-28 10:59:15 · 399 阅读 · 0 评论 -
SpringBoot 实现全局异常处理
验证 BusinessServiceException 异常也很简单,我们将上面 UserEntity 的参数补全,但是代码中为空会抛错的那个两个参数我们不传,看下会有什么结果。请求结果:这里同样是我们自定义的返回对象,并不是SpringBoot默认的500页面,所以验证成功。原创 2024-06-20 15:44:44 · 1471 阅读 · 0 评论 -
RocketMQ 学习笔记及项目实战
什么是 RocketMQ?RocketMQ 是众多 MQ 中的一种,属于Alibaba旗下,使用JAVA语言开发的一款消息中间件,具有高性能、高可靠、高实时、分布式特点。MQ的全称是 Message Queue 消息队列,使用较多的消息队列有ActiveMQ,RabbitMQ,ZeroMQ,Kafka,MetaMQ,RocketMQ。RocketMQ的重要组成部分现实生活中的邮政系统要正常运行,离不开下面这四个角色, 一是发信者, 二是收信者, 三是负责暂存、传输的邮局, 四是负责协调各个地方邮局的管原创 2024-05-30 17:47:06 · 1079 阅读 · 0 评论 -
聊一聊 ThreadLocal 和 volatile
但是我不希望把它分析的太复杂,当我看完源码后对ThreadLocal的总结就一句话:TheadLocal 内部维护着每个线程所对应的值,这个值通过 ThreadLocalMap(和 HashMap 类似) 存放,键就是线程本身,值就是存放的数据。TheadLocal 的意思是线程本地变量,可以将它理解成一种容器,当将数据放进TheadLocal容器后,当每一个线程访问它的时候都会拷贝一份数据到自己本地,各自对这个数据进行读写操作,线程之间互不影响,完全隔离。如何避免这种风险呢?看到这个结果有没有发现什么?原创 2024-05-30 17:31:17 · 811 阅读 · 0 评论