最近有些地区疫情严重了,各位小伙伴多多注意身体安全,但是学习也别落下!

作为一名优秀的程序员,技术面试都是不可避免的一个环节,一般技术面试官都会通过自己的方式去考察程序员的技术功底与基础理论知识。 如果你参加过一些大厂面试,肯定会遇到一些这样的问题:

  • 1、看你项目都用的框架,熟悉Spring、mybatis等框架实现原理吗?
  • 2、 看你上面有接触过消息中间件,负载均衡、RPC框架等技术吗,MySQL分库分表有做过吗?
  • 3、 分布式架构设计,Redis分布式锁呢?

是不是看上去很难,是不是和自己准备的“题库”中的问题不一样?不知道从何处下手?如果你有这种感觉,那么说明你的技术还需要继续修炼。

面对如此多的技术面试,怎么样才能说自己的技术已经过关了呢?只有问题没有参考答案,但是,请允许我说但是,对于下面这些问题,我这里还是有一份参考学习笔记文档面经试题解析的在文末分享,需要各位小伙伴下来逐一学习!

一、开场白

自我介绍,项目经验(介绍下自己最满意的,有技术亮点的项目或平台,重点介绍下自己负责那部分的技术细节;这一块主要考察应聘者对自己做过的事情是否有清晰的描述,判断做的事情的复杂度)

二、MyBatis部分

1、什么是Mybatis? 2、Mybaits 的优点 3、MyBatis框架的缺点 4、MyBatis 框架适用场合 5、MyBatis 与Hibernate有哪些不同? 6、#和$0的区别是什么? 7、当实体类中的属性名和表中的字段名不一样,怎么办? 8、模糊查询 like语句该怎么写? 9、通常-个Xml映射文件,都会写-个Dao接口与之对应,请问,这个Dao接口的工作原理是什么? Dao接口里的方法,参数不同时,方法能重载吗? 10、 Mybatis是如何进行分页的?分页插件的原理是什么? 11、Mybatis 是如何将sql执行结果封装为目标对象并返回的?都有哪些映射形式? 12、如何执行批量插入? 13、如何获取自动生成的(主)腱值? 14、在mapper中如何传递多个参数 15、Mybatis 动态sq|有什么用?执行原理?有哪些动态sql? 16、Xml映射文件中,除了常见的selectlinsertlupdaeldelete标签之外,还有哪些标签? 18、为什么说Mybatis是半自动ORM映射工具?它与全自动的区别在哪里? 19、一对一、一对多的关联查询 ? 20、MyBatis实现- 对一-有几种方式?具体怎么操作的? 21、MyBatis 实现-对多有几种方式怎么操作的? 22、Mybatis是否支持延迟加载?如果支持,它的实现原理是什么? 23、Mybatis的一级、二级缓存 24、什么是MyBatis的接口绑定?有哪些实现方式? 25、使用MyBatis的mapper接口调用时有哪些要求? 26、Mapper 编写有哪几种方式? 27、简述Mybatis的插件运行原理,以及如何编写一个插件。

三、Spring部分

1、什么是spring? 2、使用Spring框架的好处是什么? 3、Spring由哪些模块组成? 4、核心容器(应用上下文) 模块。 5、BeanFactory – BeanFactory 实现举例。 6、XMLBeanFactory 7、解释AOP模块 8、解释JDBC抽象和DAO模块。 9、解释对象/关系映射集成模块。 10、Spring配置文件 11、什么是Spring IOC 容器? 12、IOC的优点是什么? 13、什么是Spring beans? 14、哪些是重要的bean生命周期方法?你能重载它们吗? 15、什么是bean装配? 16、什么是bean的自动装配? 17、解释不同方式的自动装配 。 18、自动装配有哪些局限性 ? 19、什么是Spring MVC框架的控制器?

四、SpringBoot部分

1、什么是Spring Boot? 2、Spring Boot有哪些优点? 3、什么是JavaConfig? 4、如何重新加载Spring Boot上的更改,而无需重新启动服务器? 5、Spring Boot中的监视器是什么? 6、如何在Spring Boot中禁用Actuator端点安全性? 7、如何在自定义端口上运行Spring Boot应用程序? 8、什么是YAML? 9、如何实现Spring Boot应用程序的安全性? 10、如何集成Spring Boot和ActiveMQ? 11、如何使用Spring Boot实现分页和排序? 12、什么是Swagger?你用Spring Boot实现了它吗? 13、什么是Spring Profiles? 14、什么是Spring Batch? 15、什么是FreeMarker模板? 16、如何使用Spring Boot实现异常处理? 17、您使用了哪些starter maven依赖项? 18、什么是CSRF攻击?

五、SpringCloud部分

1、什么是Spring Cloud? 2、使用Spring Cloud有什么优势? 3、服务注册和发现是什么意思?Spring Cloud如何实现? 4、负载平衡的意义什么? 5、什么是Hystrix?它如何实现容错? 6、什么是Hystrix断路器?我们需要它吗? 7、什么是Netflix Feign?它的优点是什么? 8、什么是Spring Cloud Bus?我们需要它吗?

六、RabbitMQ部分

1、什么是rabbitmq 2、为什么要使用rabbitmq 3、使用rabbitmq的场景 4、如何确保消息正确地发送至RabbitMQ? 如何确保消息接收方消费了消息? 5、如何避免消息重复投递或重复消费? 6、消息基于什么传输? 7、消息如何分发? 8、消息怎么路由? 9、如何确保消息不丢失? 10、使用RabbitMQ有什么好处? 11、RabbitMQ的集群 12、mq的缺点

七、MySQL部分

1、MySQL中有哪几种锁? 2、MySQL中有哪些不同的表格? 3、简述在MySQL数据库中MyISAM和InnoDB的区别 4、MySQL中InnoDB支持的四种事务隔离级别名称,以及逐级之间的区别? 5、CHAR和VARCHAR的区别? 6、主键和候选键有什么区别? 7、myisamchk是用来做什么的? 8、如果一个表有一列定义为TIMESTAMP,将发生什么? 9、你怎么看到为表格定义的所有索引? 10、LIKE声明中的%和_是什么意思? 11、列对比运算符是什么? 12、MySQL_fetch_array和MySQL_fetch_object的区别是什么? 13、MyISAM表格将在哪里存储,并且还提供其存储格式? 14、MySQL如何优化DISTINCT? 15、可以使用多少列创建索引? 16、NOW()和CURRENT_DATE()有什么区别? 17、什么是非标准字符串类型? 18、什么是通用SQL函数? 19、MySQL支持事务吗? 20、MySQL里记录货币用什么字段类型好 21、MySQL有关权限的表都有哪几个? 22、列的字符串类型可以是什么? 23、MySQL数据库作发布系统的存储,一天五万条以上的增量,预计运维三年,怎么优化? 24、锁的优化策略 25、简单描述MySQL中,索引,主键,唯一索引,联合索引的区别,对数据库的性能有什么影响(从读写两 26、Myql中的事务回滚机制概述

由于文章篇幅问题,我就不接下来一一列出来了,需要完整文档的小伙伴【戳此处