- 博客(121)
- 收藏
- 关注
原创 实战:10 种实现延迟任务的方法,附代码!
顾明思议,我们把需要延迟执行的任务叫做延迟任务。延迟任务的使用场景有以下这些:红包 24 小时未被查收,需要延迟执退还业务;每个月账单日,需要给用户发送当月的对账单;订单下单之后 30 分钟后,用户如果没有付钱,系统需要自动取消订单。等事件都需要使用延迟任务。本文讲了延迟任务的使用场景,以及延迟任务的 10 种实现方式:手动无线循环;DelayQueue;Redis zset 数据判断的方式;Redis 键空间通知的方式;Netty 提供的 HashedWheelTimer 工具类;...
2022-08-04 14:26:23 485 1
原创 新来的大佬一个注解搞定 Spring Boot 接口恶意刷新和暴力请求,又学会一招
基于SpringBoot+MyBatisPlus+Vue&Element实现的后台管理系统+用户小程序,支持RBAC动态权限、多租户、数据权限、工作流、三方登录、支付、短信、商城等功能。项目地址https//gitee.com/zhijiantianya/ruoyi-vue-pro。视频教程https//doc.iocoder.cn/video/技术要点springboot的基本知识,redis基本操作,本文有参考其他视频的教学,希望可以帮助更多热爱it行业的人,...
2022-07-27 21:03:28 512
原创 多线程浅谈
这种情况,一般都循环调用同一段代码,每次循环的逻辑一致,前后不关联。这样AB两个逻辑可以并行执行,DE两个逻辑可以并行执行,最大执行时间取决于哪个逻辑更慢。那么可用CompletableFuture解决。更多java进阶资料,面试资料,关注公众号。敬请期待我的下一篇文章,谢谢。...
2022-07-27 09:13:19 328
原创 Spring Boot 一个接口同时支持表单表单、form-data、json 的优雅写法
}@Override=null);}@OverridethrownewIllegalArgumentException("不支持contentType");}}}}thrownewIllegalArgumentException("不支持contentType");}}
2022-07-27 09:11:04 617
原创 面试官:为什么数据库连接很消耗资源,资源都消耗在哪里?
本文主要想探究一下连接数据库的细节,尤其是在应用中要使用数据库来连接池,以免每次发送一次请求就重新建立一次连接。对于这个问题,答案都是一致的,建立数据库连接很耗时,但是这个耗时是都多少呢,又是分别在哪些方面产生的耗时呢?本文以连接数据库为例,因为数据库是开源的,其通信协议是公开的,所以我们能够详细分析建立连接的整个过程。首先先看一下连接数据库的代码,如下:然后通过「Wireshark」 分析整个连接的建立过程,如下:Wireshark抓包在上图中显示的连接过程中,可以看出的通信协议是基于传输协议的,而
2022-06-27 17:31:52 202
原创 4年工作经验,多线程间的5种通信方式都说不出来,你敢信?
问题一、使用 volatile 关键字二、使用 Object 类的 wait()/notify()三、使用JUC工具类 CountDownLatch四、使用 ReentrantLock 结合 Condition五、基本 LockSupport 实现线程间的阻塞和唤醒有两个线程,A 线程向一个集合里面依次添加元素“abc”字符串,一共添加十次,当添加到第五次的时候,希望 B 线程能够收到 A 线程的通知,然后 B 线程执行相关的业务操作。线程间通信的模型有两种:共享内存和消息传递,以下方式都是基本这两种模型来
2022-06-27 17:30:22 121
原创 OPPO面试整理,真正的八股文,狂虐面试官
最近有粉丝私信说被 oppo 的后端面试问麻了,所以今天给大家推荐一篇整理了 16 道 oppo 面试真题答案的文章。希望对大家有帮助哈,一起学习,一起进步。聊聊你印象最深刻的项目,或者做了什么优化。你项目提到分布式锁,你们是怎么使用分布式锁的?常见分布式事务解决方案你们的接口幂等是如何保证的?你们的 MySQL 架构是怎样的?常见的索引结构有?哈希表结构属于哪种场景?给你 ab,ac,abc 字段,你是如何加索引的?数据库隔离级别是否了解?你们的数据库默认隔离级别是?为什么选它?RR 隔离级别实现原理,它
2022-06-11 16:58:12 735
原创 面试官:你天天用 Lombok,说说它什么原理?我竟然答不上来…
Lombok如何使用功能编译时注解注解处理工具apt定义注解定义注解处理器定义使用注解的类(测试类)相信大家在项目中都使用过Lombok,因为能够简化我们许多的代码,但是该有的功能一点也不少。那么lombok到底是个什么呢,lombok是一个可以通过简单的注解的形式来帮助我们简化消除一些必须有但显得很臃肿的 Java 代码的工具,简单来说,比如我们新建了一个类,然后在其中写了几个字段,然后通常情况下我们需要手动去建立getter和setter方法啊,构造函数啊之类的,lombok的作用就是为了省去我们手动创
2022-06-09 14:06:03 523 1
原创 聊聊领域驱动设计
最近体会到了反噬力,接下来在思想和行动上都要改改了。今天还是来聊编程相关的。每当看到结对编程、测试驱动开发、敏捷开发之类的字眼,我心中总是泛起一丝凉凉的感觉。这次我们来聊DDD(Domain Driven Design), 第一次听这概念还是从左耳朵耗子(陈皓先生)那里了解的,当时他还给我送了一本相关的书。在开始了解的阶段,我觉得这玩儿就是个鸡肋,可落地性很差。但是,随着我了解的深入,我发现了自己固有的偏见。于是,我私下问了几个大厂的同行,他们说DDD并没有使用起来,但正在探索引入和使用。下面,来聊一聊D
2022-06-05 16:31:15 295
原创 面试官:大量请求 Redis 不存在的数据,从而打倒数据库,你有什么方案?
大家都知道,在计算机中,IO一直是一个瓶颈,很多框架以及技术甚至硬件都是为了降低IO操作而生,今天聊一聊过滤器,先说一个场景:我们业务后端涉及数据库,当请求消息查询某些信息时,可能先检查缓存中是否有相关信息,有的话返回,如果没有的话可能就要去数据库里面查询,这时候有一个问题,如果很多请求是在请求数据库根本不存在的数据,那么数据库就要频繁响应这种不必要的IO查询,如果再多一些,数据库大多数IO都在响应这种毫无意义的请求操作。那么如何将这些请求阻挡在外呢?过滤器由此诞生!布隆过滤器(Bloom Filter)大
2022-06-02 14:40:29 209
原创 Kafka 万亿级消息实践之资源组流量掉零故障排查分析
一、Kafka集群部署架构为了让读者能与小编在后续的问题分析中有更好的共鸣,小编先与各位读者朋友对齐一下我们 Kafka 集群的部署架构及服务接入Kafka集群的流程。为了避免超大集群我们按照业务维度将整个每天负责十万亿级消息的 Kafka 集群拆分成了多个 Kafka 集群。拆分粒度太粗会导致单一集群过大,容易由于流量突变、资源隔离、限速等原因导致集群稳定性和可用性受到影响,拆分粒度太细又会因为集群太多不易维护,集群内资源较少应对突发情况的抗风险能力较弱。由于 Kafka 数...
2022-05-27 17:53:10 126
原创 一线大厂面试:你知道SpringBoot+RabbitMQ 死信队列?
前言 环境准备配置 队列达到最大长度 消息 TTL 过期 拒绝消息 前言死信:无法被消费的消息,称为死信。如果死信一直留在队列中,会导致一直被消费,却从不消费成功。所以我们专门开辟了一个来存放死信的队列,叫死信队列(DLX,dead-letter-exchange)。死信的几种来源: 消息 TTL 过期(time to live,存活时间,可以用在限时支付消息) 队列达到最大长度(队列满了,无法路由到该队列) 消息被拒..
2022-05-27 13:48:44 178
原创 小米面试官:听你说精通注册中心,我们来聊 3 天 3 夜
对于注册中心,在写这篇文章前,我其实只对ETCD有比较深入的了解,但是对于Zookeeper和其它的注册中心了解甚少,甚至都没有考虑过ETCD和Zookeeper是否适合作为注册中心。经过近2周的学习,原来注册中心除了ETCD和Zookeeper,常用的还有Eureka、Nacos、Consul,下面我们就对这些常用的注册中心,初探它们的异同,便于后续技术选型。全文接近8千字,有点长,建议先收藏,再慢慢看,下面是文章目录:注册中心基本概念什么是注册中心?注册中心主要有三种角色:.
2022-05-27 11:49:15 288
原创 从5秒优化到1秒,系统飞起来了...
前言 优化背景和目标 通过压缩让耗时急剧减少 并行获取数据,响应飞快 缓存分类,进一步加速 MySQL 索引的优化 JVM 优化 其他优化 总结 前言性能优化,有时候看起来是一个比较虚的技术需求。除非代码慢的已经让人无法忍受,否则,很少有公司会有觉悟投入资源去做这些工作。即使你有了性能指标数据,也很难说服领导做一个由耗时 300ms 降低到 150ms 的改进,因为它没有业务价值。这很让人伤心,但这是悲催..
2022-05-27 11:38:07 337
原创 面试官:你来说说RocketMQ的消费的启动过程?
今天周五,来聊聊 RocketMQ 中一个关键的知识点:消费者的启动过程。多数消息队列中,消费者和 Broker 通信的方式有两种,PUSH 模式和 PULL 模式: PUSH 模式:Broker 主动把消息推送给订阅的消费者; PULL模式:消费者主动从 Broker 拉取消息。 注意,RocketMQ 并没有真正实现 PUSH 模式, RocketMQ 中的 PUSH 模式,本质上也是 PULL 模式,只是消费端封装了轮询过程,相当于开启一个定时线程不停地从 Broker 拉取消
2022-05-27 09:20:07 296
原创 1.5W字Docker详解,从入门到下地干活一条龙
什么是 Linux 容器Linux容器是与系统其他部分隔离开的一系列进程,从另一个镜像运行,并由该镜像提供支持进程所需的全部文件。容器提供的镜像包含了应用的所有依赖项,因而在从开发到测试再到生产的整个过程中,它都具有可移植性和一致性。更加详细地来说,请您假定您在开发一个应用。您使用的是一台笔记本电脑,而且您的开发环境具有特定的配置。其他开发人员身处的环境配置可能稍有不同。您正在开发的应用依赖于您当前的配置,还要依赖于某些特定文件。与此同时,您的企业还拥有标准化的测试和生产环境,且具有
2022-05-25 14:06:01 375
原创 面试官:用分库分表如何做到永不迁移数据和避免热点问题?
一、前言中大型项目中,一旦遇到数据量比较大,小伙伴应该都知道就应该对数据进行拆分了。有垂直和水平两种。垂直拆分比较简单,也就是本来一个数据库,数据量大之后,从业务角度进行拆分多个库。如下图,独立的拆分出订单库和用户库。正在上传…重新上传取消水平拆分的概念,是同一个业务数据量大之后,进行水平拆分。上图中订单数据达到了4000万,我们也知道mysql单表存储量推荐是百万级,如果不进行处理,mysql单表数据太大,会导致性能变慢。使用方案可以参考数据进行水平拆分。把4000万数据拆分4张表或
2022-05-25 11:41:12 230
原创 面试官:请你介绍一下缓存穿透、缓存空值、缓存雪崩、缓存击穿的,通俗易懂
雪崩是后端服务中的一个专业名词,为了理解它,我们循序渐渐地来介绍。雪崩是积累性的问题,雪崩之下,没有一片雪花是无辜的。今天,来聊聊缓存穿透、缓存击穿、缓存雪崩相关的问题。相信大家对这几个概念会有更清晰的认识。对于互联网开发人员来说,肯定会熟悉雪崩这个概念,貌似有点谈虎色变的感觉。如果后端服务雪崩了,那就GG了。今天写的这个主题内容,其实非常基础,但是作为高并发非常重要的几个场景,绝对绕不开,估计大家面试时,也经常会遇到。这个主题的文章,网上非常多,但是感觉没有合适的,要么文章不够精炼,要么就
2022-05-25 09:01:43 402
原创 一线大厂面试官问:你真的懂电商订单开发吗?
昨天有个朋友去面试,被问到订单系统如何设计,主要是因为他简历上有个电商相关的项目,然后就因为答得太过片面挂了。所以如果你的简历上也写了商城项目,那你一定要认真看完本文。很多同学都很疑惑为什么现在的商城项目都烂大街了,为什么还那么多人写?因为一个好的商城项目的的确确能把你所学的东西统合起来,而难度又不至于太高,所以一直都是很多刚毕业的学生首选。当然如果你的技术非常过硬,那肯定可以选择更多让人眼前一亮的项目。关于商城项目我之前也写过一篇文章推荐了,感兴趣的朋友可以去看看好了,闲话就说到这,本文主要讲
2022-05-25 08:55:12 572 1
原创 面试官:Spring Aop 与 AspectJ 有什么区别和联系?
区别AspectJAspectJ是一个面向切面的框架,它扩展了Java语言。AspectJ定义了AOP语法,所以它有一个专门的编译器用来生成遵守Java字节编码规范的Class文件。spring aopSpring提供了四种类型的Aop支持 基于经典的SpringAOP 纯POJO切面 @ASpectJ注解驱动的切面 注入式AspectJ切面(其实与Spring并无多大的关系,这个就是使用AspectJ这个框架实现Aop编程) 基于经典的SpringA
2022-05-23 13:45:39 165
原创 2022年Java中高级工程师200道精选面试题学会就能进大厂
你好,相信你一定很期待这份面试题,这份面试题是我花数个月整理出来的,内容涵盖了各方各面,特别是JVM、Mysql、多线程高并发、Redis、Spring这几个专题,是博主精心整理的亲身被面过的阿里、京东、虾皮、蚂蚁等一些大厂的面试题,学会进大厂真的不是梦!评论区回复“1”,即可免费拿到这份面试题!目录:1、面试题1、JVM2、集合3、多线程4、Redis5、消息队列6、Mysql7、Spring8、Mybatis9、设计模式10、计算机网络11、数据结构12、其它13
2022-05-21 09:44:16 400
原创 大厂java程序员教你面试如何介绍项目经验
本文包含如下的内容。1 在Java面试时,如何介绍项目经验?2 在介绍项目经验时,如何引导面试官后继的提问。3 再进一步给出在面试前系统准备面试问题以及面试亮点的技巧。本人于3年前写的博文,如何在面试中介绍自己的项目经验,经过大家的捧场,陆续得到了将近7万个点击量,也得到了众多网站公众号的转载,不过自己感觉,这篇文章更多的是偏重于方法,没有具体给到Java方面相关的说辞。三年过去了,随着本人面试官经验的积累,也随着技术的进步,本人就用适合当下2021年Java初级开发的面试场景,改写
2022-05-21 09:35:01 4957 2
原创 Java程序员面试,一招教你如何不怕面试
面试官问的问题,无非就是两部分:技术问题和非技术问题技术问题不需要多说了,主要还是看你之前的水平了,面试之前再好好准备、好好突击一下。需要注意的是:如果再面试中遇到没听过的名词、问题,别不懂装懂,你以为面试官傻吗,根本糊弄不过去,还不如诚实点说不懂。如果你不甘心说不懂怎么办?有一次我面试一个新人,我问你用过 git 吗,他想了想说没用过,然后让我给他介绍一下,介绍完之后,他说之前一直用 svn,说了说 svn 的操作。到此为止,我觉得他这个问题回答的还 ok。但是,这还没结束,他又问我
2022-05-21 09:30:09 286
原创 Spring Boot 面试杀手锏:自动配置原理
不论在工作中,亦或是求职面试,Spring Boot已经成为我们必知必会的技能项。除了某些老旧的政府项目或金融项目持有观望态度外,如今的各行各业都在飞速的拥抱这个已经不是很新的Spring启动框架。当然,作为Spring Boot的精髓,自动配置原理的工作过程往往只有在“面试”的时候才能用得上,但是如果在工作中你能够深入的理解Spring Boot的自动配置原理,将无往不利。Spring Boot的出现,得益于“习惯优于配置”的理念,没有繁琐的配置、难以集成的内容(大多数流行第三方技术都被集成),这
2022-05-19 18:18:26 102
原创 招银一面:如何保障 MySQL 和 Redis 的数据一致性?
如何保障 MySQL 和 Redis 的数据一致性?这个问题很早之前我就遇到过,但是一直没有仔细去研究,上个月看了极客的课程,有一篇文章专门有过讲解,刚好有粉丝也问我这个问题,所以感觉有必要单独出一篇。之前也看了很多相关的文章,但是感觉讲的都不好,很多文章都会去讲各种策略,比如(旁路缓存)策略、(读穿 / 写穿)策略和(写回)策略等,感觉意义真的不大,然后有的文章也只讲了部分情况,也没有告诉最优解。我直接先抛一下结论:在满足实时性的条件下,不存在两者完全保存一致的方案,只有最终一致性方案。根据网上.
2022-05-18 13:25:41 5703
原创 面试官:1亿条数据批量插入 MySQL,哪种方式最快?
这几天研究mysql优化中查询效率时,发现测试的数据太少(10万级别),利用 EXPLAIN 比较不同的 SQL 语句,不能够得到比较有效的测评数据,大多模棱两可,不敢通过这些数据下定论。所以通过随机生成人的姓名、年龄、性别、电话、email、地址 ,向mysql数据库大量插入数据,便于用大量的数据测试 SQL 语句优化效率。、在生成过程中发现使用不同的方法,效率天差万别。1、先上Mysql数据库,随机生成的人员数据图。分别是ID、姓名、性别、年龄、Email、电话、住址。下图一共三千三百万..
2022-05-18 09:17:44 634 1
原创 阿里一面: 每秒 570000 的写入,如何实现?
一、需求一个朋友接到一个需求,从大数据平台收到一个数据写入在20亿+,需要快速地加载到MySQL中,供第二天业务展示使用。二、实现再分析对于单表20亿, 在MySQL运维,说真的这块目前涉及得比较少,也基本没什么经验,但对于InnoDB单表Insert 如果内存大于数据情况下,可以维持在10万-15万行写入。但很多时间我们接受的项目还是数据超过内存的。这里使用XeLabs TokuDB做一个测试。三、XeLabs TokuDB 介绍项目地址:https://github.com/
2022-05-18 08:52:23 130
原创 面试官:为什么数据库连接池不采用 IO 多路复用?我懵逼了。。
今天我们聊一个不常见的 Java 面试题:为什么数据库连接池不采用 IO 多路复用?这是一个非常好的问题。IO多路复用被视为是非常好的性能助力器。但是一般我们在使用 DB 时,还是经常性采用c3p0,tomcat connection pool等技术来与 DB 连接,哪怕整个程序已经变成以Netty为核心。这到底是为什么?首先纠正一个常见的误解。IO多路复用听上去好像是多个数据可以共享一个IO(socket连接),实际上并非如此。「IO多路复用不是指多个服务共享一个连接,而仅仅是指多个连接的管理可以
2022-05-17 11:23:02 127
原创 大厂面试:ThreadLocal夺命11连问,你能过几问?
前言前一段时间,有同事使用ThreadLocal踩坑了,正好引起了我的兴趣。所以近期,我抽空把ThreadLocal的源码再研究了一下,越看越有意思,发现里面的东西还真不少。我把精华浓缩了一下,汇集成了下面11个问题,看看你能顶住第几个?1. 为什么要用ThreadLocal?并发编程是一项非常重要的技术,它让我们的程序变得更加高效。但在并发的场景中,如果有多个线程同时修改公共变量,可能会出现线程安全问题,即该变量最终结果可能出现异常。为了解决线程安全问题,JDK出现了很多技
2022-05-16 17:38:13 516
原创 面试官:怎么操作MyBatis批量插入几千条数据
近日,项目中有一个耗时较长的Job存在CPU占用过高的问题,经排查发现,主要时间消耗在往MyBatis中批量插入数据。mapper configuration是用foreach循环做的,差不多是这样。(由于项目保密,以下代码均为自己手写的demo代码)<insert id="batchInsert" parameterType="java.util.List"> insert into USER (id, name) values <foreach collection=
2022-05-16 15:06:21 2400 1
原创 几分钟处理完30亿个数据...牛叉大了
目录 场景说明 模拟数据 场景分析 读取数据 处理数据 遇到的问题 场景说明现有一个 10G 文件的数据,里面包含了 18-70 之间的整数,分别表示 18-70 岁的人群数量统计,假设年龄范围分布均匀,分别表示系统中所有用户的年龄数,找出重复次数最多的那个数,现有一台内存为 4G、2 核 CPU 的电脑,请写一个算法实现。23,31,42,19,60,30,36,........模拟数据Java 中...
2022-05-16 15:03:23 129
原创 京东白条技术架构进化分享,这篇总算是讲清楚了 ~
相信大家都听说过单体和我服务,那么,单体到微服务架构的数据是如何演进的呢?这是个有意思的话题。今天,我们一起来看看,希望大家都有收获和启发。京东白条的快速发展满足了当前人们日益增长的消费需求。在京东商城上用京东白条来支付,已经成为一大批用户的消费习惯,更是在某种意义上成为了京东对外的『标签』。而作为一家互联网金融消费平台,京东白条的后台技术团队更是不容忽视的存在。而其也正是支撑京东白条自 2014 年初上线伊始,至今服务数亿用户的最终根源所在。正是京东白条技术团队多年的努力,才造就了当前京东白条
2022-05-16 14:44:22 949
原创 面试官:为什么不建议在 MySQL 中使用 UTF-8?
记得去年我在往MySQL存入emoji表情😲😳时,一直出错,无法导入。后来找到办法 -- 通过把 utf8 改成 utf8mb4 就可以了,并没有深究。一年后,我看到一篇文章讲到emoji文字占4个字节,通常要用utf-8去接收才行,其他编码可能会出错。我突然想到去年操作MySQL把utf8改成utf8mb4的事儿。嗯?他本身不就是utf8编码么!那我当时还改个锤子?难道,MySQL的utf8不是真正的UTF-8编码吗??! 卧槽这。。MySQL有bug!带着疑问查询了很多相
2022-05-16 09:22:38 107
原创 面试官:单表6亿数据怎么做性能测试
最近由于项目需求使用到了 clickhouse 做分析数据库,于是用测试环境做了一个单表 6 亿数据量的性能测试,记录一下测试结果,有做超大数据量分析技术选型需求的朋友可以参考下。服务器信息 CPU:Intel Xeon Gold 6240 @ 8x 2.594GHz 内存:32G 系统:CentOS 7.6 Linux内核版本:3.10.0 磁盘类型:机械硬盘 文件系统:ext4 Clickhou
2022-05-16 09:19:40 669
原创 面试官:Spring Boot 定时任务开启后,怎么符合条件自动停止?
面试官问题大概就是:Spring Boot 定时任务开启后,怎么符合条件自动停止?当时我有空,虽然已经给出了参考答案,但可能还有一些细节地方要注意的,另外,我也觉得这个问题特别有意思,现在特别拿出来整理下,分享下给大家。1、自定义任务调度首先覆盖TaskSchedulingAutoConfiguration自动配置类里面的ThreadPoolTaskSchedulerBean:/***自定义任务调度*公众号:Java技术栈*/@Data@Componen...
2022-05-15 20:05:26 325
原创 面试官问:i++ 是线程安全的吗?
简介volatile关键字保证了在多线程环境下,被修饰的变量在别修改后会马上同步到主存,这样该线程对这个变量的修改就是对所有其他线程可见的,其他线程能够马上读到这个修改后值.Thread的本地内存 每个Thread都拥有自己的线程存储空间 Thread何时同步本地存储空间的数据到主存是不确定的 例子借用Google JEREMY MANSON 的解释,上图表示两个线程并发执行,而且代码顺序上为Thread1->Thread21、不用 volatile假如re
2022-05-15 20:04:10 169
原创 Kubernetes 架构核心点总结
一个目标:容器操作 两地三中心 四层服务发现 五种Pod共享资源 六个CNI常用插件 七层负载均衡 八种隔离维度 九个网络模型原则 十类IP地址 一个目标:容器操作;两地三中心;四层服务发现;五种Pod共享资源;六个CNI常用插件;七层负载均衡;八种隔离维度;九个网络模型原则;十类IP地址;百级产品线;千级物理机;万级容器;相如无亿,K8s有亿:亿级日服务人次。一个目标:容器操作Kubernetes(k8s)..
2022-05-14 13:55:34 107
原创 面试官:你天天用 Lombok,说说它什么原理?我答不上来…
Lombok如何使用 功能 编译时注解 注解处理工具apt 定义注解 定义注解处理器 定义使用注解的类(测试类) 相信大家在项目中都使用过Lombok,因为能够简化我们许多的代码,但是该有的功能一点也不少。那么lombok到底是个什么呢,lombok是一个可以通过简单的注解的形式来帮助我们简化消除一些必须有但显得很臃肿的 Java 代码的工具,简单来说,比如我们新建了一个类,然后在其中写了几个字段,然后通常情..
2022-05-14 13:52:40 141
原创 程序员面试常见的10个问题,非常实用的面试技巧,收藏一下
今天给大家分享10道面试常见问题的回答套路,相信一定对你有所帮助!Q1:请你先自我介绍下回答技巧:回答尽量简短,控制在1-2分钟内,先简单的介绍一下自己,说下自己有什么优点,然后介绍下自己过去的一些实习经历。有经验的求职者要突出自己的工作经验,参与过哪些重要的项目和取得的成就等。回答话术:您好,我是毕业于XX大学XX专业的XXX,很高兴能够参加这次面试。我曾在学校里参加过xxx竞赛,获得xxx成果,有过xxx方面的经验,并掌握了xxx技能,希望能够有机会去贵公司的xxx岗工作,谢谢。
2022-05-14 11:09:11 5200
原创 架构师之Mybatis面试专题及答案,大厂必问
1、什么是 MyBatis?答:MyBatis 是一个可以自定义 SQL、存储过程和高级映射的持久层框架。2、讲下 MyBatis 的缓存答:MyBatis 的缓存分为一级缓存和二级缓存,一级缓存放在 session 里面,默认就有,二级缓存放在它的命名空间里,默认是不打开的,使用二级缓存属性类需要实现 Serializable 序列化接口(可用来保存对象的状态),可在它的映射文件中配置<cache/>3、Mybatis 是如何进行分页的?分页插件的原理是什么?答:1)Mybat
2022-05-14 09:51:35 203
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人