写点什么

BATJ 互联网月薪 38K 的 Java 岗面试题首曝光,掌握这些大厂 Offer 指定跑不了

  • 2022 年 5 月 11 日
  • 本文字数:1602 字

    阅读完需:约 5 分钟

  • Spring 的 AOP 理解:

  • Spring 的 IOC 理解

  • 解释一下 spring bean 的生命周期

  • 解释 Spring 支持的几种 bean 的作用域。

  • Spring 基于 xml 注入 bean 的几种方式:

  • Spring 框架中都用到了哪些设计模式?



?


Mybatis 篇


========


  • 什么是 MyBatis

  • MyBatis 的优点和缺点

  • #{}和 ${}的区别是什么?

  • 当实体类中的属性名和表中的字段名不一样 ,怎么办 ?

  • Mybatis 是如何进行分页的?分页插件的原理是什么?

  • Mybatis 是如何将 sql 执行结果封装为目标对象并返回的?都有哪些映射形式?

  • 如何执行批量插入?

  • Xml 映射文件中,除了常见的 select|insert|updae|delete 标签之外,还有哪些标签?

  • MyBatis 实现一对一有几种方式?具体怎么操作的?

  • Mybatis 是否支持延迟加载?如果支持,它的实现原理是什么?

  • Mybatis 的一级、二级缓存


![](https://img-blog.csdnimg.cn/img 《一线大厂 Java 面试题解析+后端开发学习笔记+最新架构讲解视频+实战项目源码讲义》无偿开源 威信搜索公众号【编程进阶路】 _convert/63722f89903fa0f38d32c219d154277d.png)


SpringBoot 篇


===========


  • Spring Boot 的核心注解是哪个?它主要由哪几个注解组成的?

  • 运行 Spring Boot 有哪几种方式?

  • 如何理解 Spring Boot 中的 Starters?

  • 如何在 Spring Boot 启动的时候运行一些特定的代码?

  • Spring Boot 需要独立的容器运行吗?

  • Spring Boot 中的监视器是什么?

  • 如何使用 Spring Boot 实现异常处理?

  • 你如何理解 Spring Boot 中的 Starters?

  • springboot 常用的 starter 有哪些

  • SpringBoot 实现热部署有哪几种方式?

  • 如何理解 Spring Boot 配置加载顺序?

  • Spring Boot 的核心配置文件有哪几个?它们的区别是什么?

  • 如何集成 Spring Boot 和 ActiveMQ?



?


MySQL 篇


======


  • 数据库的三范式是什么

  • 数据库引擎有哪些

  • InnoDB 与 MyISAM 的区别

  • 数据库的事务

  • 索引问题

  • SQL 优化

  • 简单说一说 drop、delete 与 truncate 的区别

  • 什么是视图

  • 什么是内联接、左外联接、右外联接?

  • 并发事务带来哪些问题?

  • 分库分表之后,id 主键如何处理?



?


Redis 篇


======


  • Redis 持久化机制

  • 缓存雪崩、缓存穿透、缓存预热、缓存更新、缓存降级等问题

  • 热点数据和冷数据是什么

  • Memcache 与 Redis 的区别都有哪些?

  • 单线程的 redis 为什么这么快

  • redis 的数据类型,以及每种数据类型的使用场景

  • redis 的过期策略以及内存淘汰机制

  • Redis 为什么是单线程的

  • Redis 常见性能问题和解决方案?

  • 为什么 Redis 的操作是原子性的,怎么保证原子性的?

  • Redis 事务



?


SpringCloud 篇


============


  • 什么是 SpringCloud

  • 什么是微服务

  • SpringCloud 有什么优势

  • 什么是服务熔断?什么是服务降级?

  • Eureka 和 zookeeper 都可以提供服务注册与发现的功能,请说说两个的区别?

  • SpringBoot 和 SpringCloud 的区别?

  • 负载平衡的意义什么?

  • 什么是 Hystrix?它如何实现容错?

  • 什么是 Hystrix 断路器?我们需要它吗?

  • 说说 RPC 的实现原理



Nginx 篇


======


  • 简述一下什么是 Nginx,它有什么优势和功能?

  • Nginx 是如何处理一个 HTTP 请求的呢?

  • 列举一些 Nginx 的特性

  • 请列举 Nginx 和 Apache 之间的不同点

  • 在 Nginx 中,如何使用未定义的服务器名称来阻止处理请求?

  • 请解释 Nginx 服务器上的 Master 和 Worker 进程分别是什么?

  • 请解释代理中的正向代理和反向代理

  • 解释 Nginx 用途



MQ 篇


===


  • 为什么使用 MQ

  • MQ 优缺点

  • Kafka、ActiveMQ、RabbitMQ、RocketMQ 都有什么区别?

  • 如何保证高可用的?

  • 如何保证消息的可靠传输?如果消息丢了怎么办

  • 如何保证消息的顺序性

  • 如何解决消息队列的延时以及过期失效问题?消息队列满了以后该怎么处理?有几百万消息持续积压几小时,说说怎么解决?

  • 设计 MQ 的思路



数据结构与算法篇


========


  • 常用的数据结构

  • 数据里有{1,2,3,4,5,6,7,8,9},请随机打乱顺序,生成一个新的数组(请以代码实现)

  • 写出代码判断一个整数是不是 2 的阶次方(请代码实现,谢绝调用 API 方法)

  • 假设今日是 2015 年 3 月 1 日,星期日,请算出 13 个月零 6 天后是星期几,距离现在多少天(请用代码实现,谢绝调用 API 方法)

  • 有两个篮子,分别为 A 和 B,篮子 A 里装有鸡蛋,篮子 B 里装有苹果,请用面向对象的思想实现两个篮子里的物品交换(请用代码实现)

  • 更多算法练习



Linux 篇


======

用户头像

还未添加个人签名 2022.04.13 加入

还未添加个人简介

评论

发布
暂无评论
BATJ互联网月薪38K的Java岗面试题首曝光,掌握这些大厂Offer指定跑不了_Java_爱好编程进阶_InfoQ写作社区