据了解,从2021年的7月份,一直到今年的3月15日,国内的互联网大厂们在9个月的时间里,累计裁撤了21.68万人,互联网大厂再遇冷冬,完成目标后火速被开除;
也就是说,在这9个月的时间内,中国凭空多出了21.68万个失业员工。
参与这大规模裁员活动的,除了腾讯、阿里和美团等企业,还有网易、京东、微博和拼多多。
可以说中国有实力的互联网企业都在裁员。
可能有人不理解,为什么中国蓬勃发展的互联网行业要如此大规模裁撤员工呢?
实际上这包含了内外两个因素,首先是内因,中国从2020年开始就收紧了互联网行业的管控措施,针对互联网各个大厂都在罚款和整改。
面对不断被挤压的生存空间,互联网大厂们为了自保,不得不通过裁撤员工来保证企业瘦身,从而获取更多的生存空间。
其次是外因,整个2021年和今年,国内的公共卫生事件发展势头较为迅猛,不少互联网企业不得不要求居家办公。
可居家办公就意味着公司大楼的房租、水电等费用彻底打了水漂,同时还不一定能保证业务的拓展和工作的效率。
所以为了减少一些不必要的开支和人力,他们也会选择裁员。
在如此恶劣的就业环境之下,仍然有人拿到了大厂的offer,裁员的同时,也同样在拼命的招人,是不是感觉很矛盾?
其实,要想生存下去,势必要有淘汰,优胜劣汰,适者生存,这是千古不变的法则;
你我要做的就是不断地深耕,把技术深度和广度提升上来,跟着大环境走,才不至于被淘汰,更好地适应社会与各大企业的发展;
为了能够帮助大家学习提升自己的技术,小编特意准备了一份厚礼送给大家,那就是今年新出炉的1685页Java面试突击核心手册,希望大家能够喜欢!
全篇共计为大家详细划分了19个部分,字数超过了10W字,面试题数量超过了1500道,同时结合了大量的实例和代码!涵盖了:Java基础、并发编程、JVM、Dubbo、MyBatis、Kafka、MySQL、RabbitMQ、Redis、Netty、Spring、Spring Boot、Spring Cloud、Zookeeper、计算机网络、HR常问问题、MySQL优化、高频SQL笔试、分布式。
因为面试题篇幅较大,这里就展示每个部分的前面10道面试题
基础部分
1、Java语言 有哪些特点
2、面向对象和面向过程的区别
3、八种基本数据类型的大小,以及他们的封装类
4、标识符的命名规则。
5、instanceof 关键字的作用
6、Java自动装箱与拆箱
7、重载和重写的区别
8、equals与= =的区别
9、Hashcode的作用
10、String、 String StringBuffer 和StringBuilder的区别是什么?
11.需要的,可私
JVM部分
1、知识点汇总
2、知识点详解:
3、说说类加载与卸载
4、简述一下JVM的内存模型
5、说说堆和栈的区别
6、什么时候会触发FullGC
7、什么是Java虚拟机?为什么Java被称作是“平台无关的编程语言"?
8、Java内存结构
9、说说对象分配规则
10、 描述下JVM加载class文件的原理机制?
11.需要的,可私
多线程&并发部分
1、说说Java中实现多线程有几种方法
2、如何停止一一个正在运行的线程
3、notify0)和notifyAIl0有什么区别?
4、sleep0和wait) 有什么区别?
5、volatile 是什么?可以保证有序性吗?
6、Thread 类中的start(和run0方法有什么区别?
7、为什么wait, notify和notifyAll这些方法不在thread类里面?
8、为什么wait和notify方法要在同步块中调用?
9、Java中interrupted 和islnterruptedd方法的区别?
10、Java中synchronized 和ReentrantLock有什么不同?
11.需要的,可私
Spring部分
1、什么是spring?
2、你们项目中为什么使用Spring框架?
3、Autowired和Resource关键字的区别?
4、依赖注入的方式有几种,各是什么?
5、讲一下什么是Spring
6、说说你对Spring MVC的理解
7、SpringMVC常用的注解有哪些?
8、谈谈你对Spring的AOP理解
9、Spring AOP和Aspect AOP有什么区别?在Spring AOP中,关注点和横切关注的区别是什么?什么是通知呢?有哪些类型呢?
10、说说你对Spring的IOC是怎么理解的?
Mybatis部分
1、什么是MyBatis
2、说说MyBatis的优点和缺点
3、#{}和${}的区别是什么?
4、当实体类中的属性名和表中的字段名不一样,怎么办?
5、Mybatis 是如何进行分页的?分页插件的原理是什么?
6、Mybatis是如何将sq|执行结果封装为目标对象并返回的?都有哪些映射形式?
7、如何执行批量插入?
8、Xml映射文件中,除了常见的selectlinsertlupdae|delete标签之外,还有哪些标签?
9、MyBatis实现- 对一有几种方式?具体怎么操作的?
10、Mybatis是否支持延迟加载?如果支持,它的实现原理是什么?
Sprinboot部分
1、为什么要用SpringBoot
2、Spring Boot的核心注解是哪个?它主要由哪几个注解组成的?
3、运行Spring Boot有哪几种方式?
4、如何理解Spring Boot中的Starters?
5、如何在Spring Boot启动的时候运行一些特定的代码?
6、Spring Boot需要独立的容器运行吗?
7、Spring Boot中的监视器是什么?
8、如何使用Spring Boot实现异常处理?
9、你如何理解Spring Boot中的Starters?
10、springboot常用的starter有哪些?
mysql部分
1、数据库的三范式是什么
2、MySQL 数据库引擎有哪些
3、说说InnoDB 与MylSAM的区别
4、数据库的事务
5、引是什么
6、SQL优化手段有哪些
7、简单说一说drop、delete 与truncate的区别
8、什么是视图
9、什么是内联接、 左外联接、右外联接?
10、 并发事务带来哪些问题?
SpringCloud部分
1、什么是SpringCloud
2、什么是微服务
3、SpringCloud有什么优势
4、什么是服务熔断? 什么是服务降级?
5、Eureka和zookeeper都可以提供服务注册与发现的功能,请说说两个的区别?
6、SpringBoot和SpringCloud的区别?
7、负载平衡的意义什么?
8、什么是Hystrix? 它如何实现容错?
9、什么是Hystrix断路器?我们需要它吗?
10、 说说RPC的实现原理
Dubbo部分
1、说说- 次Dubbo服务请求流程?
2、说说Dubbo工作原理
3、Dubbo 支持哪些协议?
4、注册中心挂了,consumer 还能不能调用provider
5、怎么实现动态感知服务下线的呢?
6、Dubbo负载均衡策略?
7、Dubbo 容错策略
8、Dubbo动态代理策略有哪些?
9、说说Dubbo与Spring Cloud的区别?
10、Zookeeper 和Dubbo的关系?
Nginx部分
1、简述-下什么是Nginx,它有什么优势和功能?
2、Nginx是如何处理一 个HTTP请求的呢?
3、列举-些Nginx的特性
4、请列举Nginx和Apache之间的不同点
5、在Nginx中,如何使用未定义的服务器名称来阻止
处理请求?
6、请解释Nginx服务 器上的Master和Worker进程分
别是什么?
7、请解释代理中的正向代理和反向代理
8、解释Nginx用途
MQ部分
1、为什么要使用MQ
2、MQ有什么优缺点
3、Kafka、 ActiveMQ、 RabbitMQ、 RocketMQ 都有什么区别?
4、如何保证高可用的?
5、如何保证消息的可靠传输?如果消息丢了怎么办
6、如何保证消息的顺序性
7、如何解决消息队列的延时以及过期失效问题?消息队列满了以后该怎么处理?有几百万消息持续积压几小时,说说怎么解决?
8、让你来设计一一个消息队列,你会怎么设计
Linux部分
1、 绝对路径用什么符号表示?当前目录、 上层目录用
什么表示?主目录用什么表示?切换目录用什么命令?
2、怎么查看当前进程?怎么执行退出?怎么查看当前
路径?
3、查看文件有哪些命令
4、列举几个常用的L inux命令
5、你平时是怎么查看日志的?
Zookeeper部分
1,说说Zookeeper是什么?
2,ZooKeeper 有哪些应用场景?
3、说说Zookeeper的 工作原理?
4,请描述一下Zookeeper 的通知机制是什么?
5,Zookeeper 对节点的watch监听通知是永久的吗?
6,Zookeeper 集群中有哪些角***r /> 7,Zookeeper集群中Server有哪些 工作状态?
8,Zookeeper集群中是怎样选举leader的?
9,Zookeeper是如何保证事务的顺序-致性的呢?
10,ZooKeeper 集群中个服务器之间是怎样通信的?
Redis部分
1, 为什么要用缓存
2,使用Redis有哪些好处?
3,什么是Redis?
4,为什么使用Redis而不是用Memcache呢?
5,为什么Redis单线程模型效率也能那么高?
6,说说Redis的线程模型
7,为什么Redis需要把所有数据放到内存中?
8,Redis 的同步机制了解是什么?
9,pipeline 有什么好处,为什么要用pipeline?
10,说一下Redis有什么优点和缺点?
分布式部分
1、分布式幂等性如何设计?
2,简单- 次完整的HTTP请求所经历的步骤?
3、说说你对分布式事务的了解
4、你知道哪些分布式事务解决方案?
5,什么是二阶段提交?
6、什么是三阶段提交?
7、什么是补偿事务?
8、消息队列是怎么实现的?
9、那你说说Sagas事务模型
10,分布式ID生成有几种方案?
网络部分
1,HTTP 响应码有哪些?分别代表什么含义?
2,Forward和Redirect的区别?
3,Get 和Post请求有哪些区别?
4,说说TCP与UDP的区别,以及各自的优缺点
5,说一下HTTP和HTTPS的区别
6,说说HTTP、TCP、Socket 的关系是什么?
7,说一下HTTP的长连接与短连接的区别
8, TCP为什么要三次握手,两次不行吗?为什么?
9,说一下TCP粘包是怎么产生的?怎么解决粘包问题的?
10,TCP如何保证可靠性
设计模式部分
1、说说什么是单例模式
2、说说你对代理模式的理解
3、说说工厂模式
4、抽象工厂模式
5、装饰器模式是什么
6、代理模式和装饰器模式有什么区别?
7、模板方法模式
8、知道享元模式吗?
9、元模式和单例模式的区别?
10、说说策略模式在我们生活的场景?
需要的小伙伴,关注微信公众号,小安说Java领取更多资料
或者私我就行了



