-
深度解读:Spring.3版本自动装配机制的演变与实践
前言今天,我们将开启对Spring-AI系列源码的讲解。请大家不急不躁,我会逐步深入,每次专注于一个知识点,以防让人感到困惑。首先,源码的讨论自然离不开自动装配。有人可能会问,之前已经讲解过这个内容了,为什么还要再谈一次?这是因为自Spring Boot 3.3.x版本以来,自动装配的机制发生了一些变化。尽管如此,凭借...9个月前 阅读284
-
神奇的 SQL 之 Index Condition Pushdown,这可是个好优化
基础回顾回表 和 索引覆盖 可是面试中的常见面试题,我们一起来回顾下,先准备点基础数据,建表 tbl_indexCREATE TABLE tbl_index ( c1 INT, c2 INT, c3 CHAR(1), PRIMARY KEY(c1), KEY idx_c2 (c2) ); 索引覆盖如果 w...9个月前 阅读281
-
spring太强了,深度解析:Spring MVC 如何巧妙获取方法参数名
1. 如何通过 Java 反射获取方法的参数名?获取参数名是一个非常有用的技巧,例如 Spring MVC Controller 中可以根据参数名自动注入对应参数值。不仅Spring框架如此,我们自己开发的框架有时候也需要此项能力。例如我前些日子分享的日志工具,UserLog 注解可实现从 UserOrder中提取 userId 和 orderId,并将其...9个月前 阅读303
-
说说Vue3中provide、inject的源码和使用技巧
使用Vue从父组件传递数据到子组件,一般使用defineProps就能满足大部分场景,但如果要跨多层级组件传递数据,则可使用provide和inject。从provide和inject组合字面理解,类似于依赖注入模式,本篇内容将从provide、inject的实现原理来分析使用中的一些技巧。provide、inject简介来自官网的介绍:一个父组件相对于其所有的后...9个月前 阅读323
-
在Vue3中高级前端是这样给按钮添加loading效果的
前言一个页面有多个按钮,每个按钮都要添加loading效果,高级前端是如何在Vue3控制按钮是否显示loading效果的呢?普通前端我们先来看看初级普通前端平常是怎么给按钮添加loading效果的:<script setup > import { ref } from 'vue' const asyncFn = () => new Promise(res...9个月前 阅读321
-
面试官:flex:1代表什么
理解flex属性在flexbox布局中,flex属性是用来控制项目的伸缩性的。它是一个复合属性,包含了flex-grow、flex-shrink和flex-basis这三个子属性。在 Flexbox 中,每个子元素都拥有一个 "flex" 属性,用于控制其在容器中的伸缩行为。"flex" 属性是一个简写属性,包含了 "flex-grow"、"flex-shrink" 和 "...9个月前 阅读295
-
字节二面:为什么SpringBoot的 jar 可以直接运行?我说因为内嵌了Tomcat容器,他让我出门左转。。
引言在传统的Java应用程序开发和部署场景中,开发者往往需要经历一系列复杂的步骤才能将应用成功部署到生产环境。例如,对于基于Servlet规范的Java Web应用,开发完成后通常会被打包成WAR格式,然后部署到像Apache Tomcat、Jetty这样的Web容器中。这一过程中,不仅要管理应用本身的编译产物,还需要处理各种第三方依赖库的...9个月前 阅读308
-
面试官问,如何在十亿级别用户中检查用户名是否存在?
前言不知道大家有没有留意过,在使用一些app注册的时候,提示你用户名已经被占用了,需要更换一个,这是如何实现的呢?你可能想这不是很简单吗,去数据库里查一下有没有不就行了吗,那么假如用户数量很多,达到数亿级别呢,这又该如何是好?数据库方案第一种方案就是查数据库的方案,大家都能够想到,代码如下:public cla...9个月前 阅读314
-
在 Web 中判断页面是不是刷新
在 Web 开发中,我们经常需要区分用户是否通过刷新操作重新加载了页面。这一操作可能是由用户手动刷新(如按下 F5 键或点击浏览器刷新按钮)或通过浏览器自动重新加载。判断页面是否刷新有助于开发者优化用户体验,例如在使用 vue 的时候需要进行权限控制,就需要判断在刷新后根据登录者的权限去添加对应的路由。本文...9个月前 阅读344
-
Transition 组件与自定义指令间的“纠葛”
persisted,这个 prop 没有在 Vue 的官方文档中出现,不过我们可以通过源码知道:图中代码源自 Vue.js 3.2.45 版本当 persisted 设置为 true 时,表示该过渡不会实际插入或移除 DOM 元素。相反,他只会切换元素的显示和隐藏状态(display: none)。这意味着元素始终存在于 DOM 中,但其可见性会根据...9个月前 阅读334